Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD e VBA
PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO

C# ::: Fundamentos da Linguagem ::: Estruturas de Controle

Tutorial C# - Como usar o laço while (enquanto) da linguagem C#

Quantidade de visualizações: 13730 vezes
O laço while (enquanto) é usado quando queremos repetir uma instrução ou bloco de instruções ENQUANTO uma condição for satisfatória. Veja um exemplo:

static void Main(string[] args){
  int valor = 1;

  while(valor <= 10){
    Console.WriteLine("{0}", valor);
    valor++;
  }

  Console.WriteLine("\n\nPressione uma tecla para sair...");
  Console.ReadKey();
}

Este trecho de código conta de 1 até 10. Veja que antes de cada iteração do laço nós testamos se o valor da variável de controle é menor ou igual a 10. A iteração acontece somente se esta condição for satisfeita, o que nos mostra que um laço while pode nunca ser executado (o que aconteceria se a condição fosse falsa já na entrada). Note ainda que dentro de cada iteração nós incrementamos o valor da variável de controle. Isso é feito para que o laço não seja executado infinitamente.

Veja um outro exemplo de laço while, desta vez simulando um menu de opções:

static void Main(string[] args){
  // variável que registra a opção do usuário
  int opcao;
  
  // lê a opção
  Console.Write("Informe a opção 1, 2 ou 3" +
    " (-1 para sair): ");
  
  // laço while que mostra as opções do menu enquanto
  // o valor -1 não for informado
  while((opcao = int.Parse(Console.ReadLine())) != -1){
    switch(opcao){
      case 1:
        Console.WriteLine("Executando a opção 1");
        break;
      case 2:
        Console.WriteLine("Executando a opção 2");
        break;
      case 3:
        Console.WriteLine("Executando a opção 3");
        break;
      default:
        Console.WriteLine("Opção incorreta");
        break;
    }

    // mostra o texto das opções novamente
    Console.Write("Informe a opção 1, 2 ou 3" +
    " (-1 para sair): ");
  }

  Console.WriteLine("\n\nPressione uma tecla para sair...");
  Console.ReadKey();
}

Se você é realmente iniciante em C#, notará que este exemplo é um pouco mais elaborado. Desta forma, estude-o atentamente. É uma técnica muito útil quando estamos escrevendo programas console, uma vez que a maioria deles possui um menu de opções.


Python ::: Dicas & Truques ::: HTTP Web Server

Como criar um servidor web em Python usando as classes BaseHTTPRequestHandler e HTTPServer

Quantidade de visualizações: 921 vezes
Nesta dica mostrarei como criar um web server em Python, ou seja, o nosso próprio servidor web. Para isso nós vamos criar uma classe ServidorWeb que herda de BaseHTTPRequestHandler, que nos fornece todos os métodos necessários para tratar requisições HTTP, tais como GET e POST.

Note que definir o nome do host como "localhost" e a porta como "8080".

Veja o código completo para o nosso web server em Python:

# precisamos importar os objetos BaseHTTPRequestHandler e HTTPServer
# do módulo http.server
from http.server import BaseHTTPRequestHandler, HTTPServer
# precisamos também do módulo time
import time

# vamos criar a classe ServidorWeb, que herda de
# BaseHTTPRequestHandler
class ServidorWeb(BaseHTTPRequestHandler):
  # vamos implementar o método que responde às requisições GET
  def do_GET(self):
    self.send_response(200)
    self.send_header("Content-type", "text/html")
    self.end_headers()
    self.wfile.write(bytes("<html><head><title>Meu Servidor Web</title></head>", 
      "utf-8"))
    self.wfile.write(bytes("<p>Requsição: %s</p>" % self.path, 
      "utf-8"))
    self.wfile.write(bytes("<body>", "utf-8"))
    self.wfile.write(bytes("<p>Exemplo de Web Server em Python</p>",
      "utf-8"))
    self.wfile.write(bytes("</body></html>", "utf-8"))

# função principal do programa
def main():
  # agora criamos um objeto HTTPServer
  host = "localhost"
  porta = 8080
  servidorWeb = HTTPServer((host, porta), ServidorWeb)
  print("Servidor iniciado em http://%s:%s" % (host, porta))

  # tentamos levantar o servidor
  try:
    servidorWeb.serve_forever()
  except KeyboardInterrupt:
    pass

  # liberamos o servidor web
  servidorWeb.server_close()
  print("O servidor web foi parado.")
  
if __name__== "__main__":
  main()

Ao executar este código você verá a seguinte mensagem:

Servidor iniciado em http://localhost:8080

A partir daí você pode abrir o seu navegador neste endereço e já verá a página web que definimos no corpo do método do_GET() da classe ServidorWeb. Agora é só explorar as dicas dessa seção para aprender ainda mais sobre redes, soquetes e servidores web usando a linguagem Python.


C ::: Desafios e Lista de Exercícios Resolvidos ::: C Básico

Exercícios Resolvidos de C - Ler um número de três dígitos, separá-lo e invertê-lo, escrevendo o número lido e sua forma inversa

Quantidade de visualizações: 1586 vezes
Algorítmo Resolvido de C - Ler um número de três dígitos, separá-lo e invertê-lo, escrevendo o número lido e sua forma inversa

Pergunta/Tarefa:

Escreva um programa C que leia um número de 3 dígitos e o inverta, escrevendo o número lido e o invertido. Por exemplo, se o usuário informar o valor 753, seu programa deverá invertê-lo, resultando em 357. Seu programa deverá exibir a seguinte saída:

Observação: Seu código deverá usar apenas os operadores matemáticos disponíveis, por padrão, na linguagem C.

Informe um valor inteiro de três dígitos: 753
O valor original é: 753
O valor invertido é: 357
Resposta/Solução:

Veja a resolução comentada deste exercício usando C console (modo texto):

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>  
   
int main(int argc, char *argv[])
{
  int numero, temp, inverso;
	
  setlocale(LC_ALL,""); // para acentos do português
  
  // vamos solicitar ao usuário que informe um valor inteiro
  // na faixa 100 a 999 (incluindo)
  printf("Informe um valor inteiro de três dígitos: ");
  // vamos ler o valor informado
  scanf("%d", &numero);

  // vamos verificar se o valor está na faixa permitida
  if(numero < 100 || numero > 999){
    printf("Valor fora da faixa permitida");
  }
  else{
    // vamos criar uma variável temporária para 
    // manter intacto o valor lido
    temp = numero;
    inverso = 0; // guardará o valor invertido

    // vamos inverter o valor agora
    while(temp != 0){
      inverso = (inverso * 10) + (temp % 10);
      temp = temp / 10;
    }

    // vamos mostrar o resultado
    printf("O valor original é: %d\n", numero);
    printf("O valor invertido é: %d", inverso);
  }  
  
  printf("\n\n");
  system("pause");
  return 0;
}



Java ::: Classes e Componentes ::: JList

Java Swing para iniciantes - Como adicionar itens a uma JList em tempo de execução

Quantidade de visualizações: 23414 vezes
Este exemplo mostra como inserir itens em uma JList do Java Swing em tempo de execução. O valor a ser inserido é informado em um JTextField. Veja que estamos usando a classe DefaultListModel e seu método addElement() para adicionar os novos itens.

Veja a janela JFrame e os componentes usados para exemplificar esta funcionalidade:



E agora veja o código Java Swing completo para o exemplo:

package arquivodecodigos;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
public class Estudos extends JFrame{
  JList lista;
  JTextField campo;  
 
  public Estudos() {
    super("A classe JList");
     
    Container c = getContentPane();
    c.setLayout(new FlowLayout(FlowLayout.LEFT));
     
    // Cria um novo DefaultListModel
    DefaultListModel modelo = new DefaultListModel();
     
    // Cria a JList
    lista = new JList();
  
    // Atribui o DefaultListModel à JList
    lista.setModel(modelo);
  
    // Um botão que permite adicionar itens na JList
    JButton btn = new JButton("Adicionar na JList");
    btn.addActionListener(
      new ActionListener(){
        public void actionPerformed(ActionEvent e){
          String valor = campo.getText();
           
          if(valor.length() != 0){
            ((DefaultListModel)(lista.getModel()))
               .addElement(valor);
            campo.setText("");
            campo.requestFocus();
          }
        }
      }
    );
 
    // Adiciona a lista à janela
    c.add(new JScrollPane(lista));
 
    // Cria um JTextField e o adiciona à janela
    campo = new JTextField(10);
    c.add(campo);
 
    // Adiciona o botão à janela
    c.add(btn);  
 
    setSize(350, 250);
    setVisible(true);
  }
   
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}



Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby


E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser. Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 19,90


© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 47 usuários muito felizes estudando em nosso site.