Anúncio Patrocinado
Chat de Sexo - Site para adultso - Maiores de 18 anos. Converse com pessoas de todo o Brasil, de forma discreta e anônima
Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Laços

Como testar se um número informado pelo usuário é binário usando C++ - Desafio de Programação Resolvido em C++

Quantidade de visualizações: 613 vezes
Pergunta/Tarefa:

Escreva um programa C++ que solicita ao usuário um número inteiro e informa se o valor informado é um número binário, ou seja, composto apenas pelos dígitos 0 e 1.

Sua saída deverá ser parecida com:

Informe um número binário: 100110
O número informado é binário.
Resposta/Solução:

Veja a resolução comentada deste exercício usando C++:

#include <iostream>
#include <cstdlib>
    
using namespace std;
    
int main(int argc, char *argv[]){
  // vamos declarar as variáveis que vamos usar
  int numero, temp;
  
  setlocale(LC_ALL,""); // para acentos do português
	
  // vamos solicitar um número binário
  cout << "Informe um número binário: ";
  cin >> numero;
  
  // agora usamos um laço while para quebrar o número em
  // seus dígitos individuais e verificar se cada um é diferente
  // de 1 e 0. Se for, o número não é binário
  while(numero > 0){
    temp = numero % 10;
      
    if(temp != 0 && temp != 1){
      cout << "O número informado não é binário.";
      break;
    }
      
    numero = numero / 10;
    if(numero == 0){
      cout << "O número informado é binário.";
    }
  }
        
  cout << "\n\n";      
  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}


Link para compartilhar na Internet ou com seus amigos:

Python ::: Tkinter GUI Toolkit ::: Círculos, Ovais e Elípses

Como desenhar círculos no Tkinter usando a função create_oval() do componente Canvas

Quantidade de visualizações: 812 vezes
Em várias situações nós precisamos desenhar círculos não preenchidos e preenchidos em Tkinter. Para isso nós podemos usar a função create_oval() do componente Canvas.

Em sua forma mais simples, a função create_oval() requer as coordenadas x e y a partir das quais o círculo ou elípse será desenhada e a largura e a altura do retângulo dentro do qual o círculo estará contido. Para desenhar uma oval ou elípse, basta manipular a largura ou altura desse retângulo.

Veja um trecho de código no qual usamos a função create_oval() para desenhar um círculo com 5 pixels de largura da linha de desenho:

# vamos importar o módulo Tkinter
from tkinter import *
from tkinter.ttk import *
 
# método principal
def main():
  # cria a janela principal da aplicação
  janela_principal = Tk() 
  
  # define as dimensões da janela
  janela_principal.geometry("400x350")
  
  # define o título da janela
  janela_principal.title("Uso do controle Canvas")
 
  # vamos criar o objeto Canvas
  canvas = Canvas(janela_principal, bg="white", width=400, height=350)
 
  # colocamos o Canvas na janela principal
  canvas.grid(row=0, column=0)
 
  # agora vamos desenhar um círculo no Canvas começando nas
  # coordenadas x=20 e y=30 centro de um retângulo de largura
  # 150 pixels por uma altura de 150 pixels e largura da linha
  # de 5 pixels
  canvas.create_oval(20, 30, 150, 150, width="5")
 
  # entramos no loop de eventos 
  janela_principal.mainloop()
 
if __name__== "__main__":
  main()

Note que a largura da linha de desenho foi informada por meio do parâmetro width. Se quisermos definir também a cor da linha do desenho, basta usarmos o parâmetro outline e fornecer a cor desejada.


Java ::: Coleções (Collections) ::: Vector

Como copiar todos os elementos de um Vector Java para um array

Quantidade de visualizações: 7738 vezes
Muitas vezes precisamos obter um array a partir de um Vector. Isso pode ser feito usando-se o método copyInto(). Veja sua assinatura:

public void copyInto(Object[] anArray)

Veja que os elementos do Vector são copiados para as mesmas posições no array. Assim, precisamos ficar atentos. Aqui podemos ter três exceções: NullPointerException (se o array fornecido como argumento for null), IndexOutOfBoundsException (se o array fornecido não for grande o suficiente para acomodar todos os elementos do array) e ArrayStoreException (se o tipo dos elementos do Vector não for de um tipo que pode ser armazenado no array fornecido como argumento).

O trecho de código abaixo mostra como copiar todos os elementos de um Vector de String para um array de String:

package estudos;

import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
    // Cria o Vector
    Vector<String> nomes = new Vector<String>();

    // adiciona itens ao Vector
    nomes.addElement("Osmar");
    nomes.addElement("Marcos");
    nomes.addElement("Ingrid");

    // Cria o array
    String[] arrayNomes = new String[3];

    // copia os elementos do Vector para o array
    nomes.copyInto(arrayNomes);

    // Exibe o conteúdo do array
    for(int i = 0; i < arrayNomes.length; i++){
      System.out.println(arrayNomes[i]); 
    }     
  } 
}

Ao executar este código Java nós teremos o seguinte resultado:

Osmar
Marcos
Ingrid


JavaScript ::: Dicas & Truques ::: Matemática e Estatística

JavaScript para matemática - Como obter o maior entre dois ou mais valores numéricos usando a função max() do JavaScript

Quantidade de visualizações: 10405 vezes
A função max() do objeto Math da linguagem JavaScript pode ser usada quando temos dois ou mais valores numéricos e gostaríamos de retornar o maior deles. Note que esta função não aceita um vetor (array) como argumento, ou seja, os valores devem ser fornecidos de forma literal ou passados como variáveis independentes.

Veja o código JavaScript completo para o exemplo:

<html>
<head>
<title>Estudando JavaScript</title>
</head>
<body>

<script type="text/javascript">
  var n1 = 45;
  var n2 = 18;
  var maior = Math.max(n1, n2);
  document.write("O maior número é " + maior);
</script>
 
</body>
</html>

Ao executar este código nós teremos o seguinte resultado:

O maior número é 43

O retorno do método max() é um objeto Number representando o maior dos valores fornecidos. Se nenhum argumento for informado, o retorno será um objeto Infinity, enquanto um objeto NaN será retornado se algum dos valores fornecidos não for um valor numérico válido.


Python ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções

Exercícios Resolvidos de Python - Como escrever uma função Python que recebe dois números inteiros e retorna a soma desses dois valores como um inteiro

Quantidade de visualizações: 410 vezes
Pergunta/Tarefa:

Escreva uma função em Python chamada somar() que recebe dois números inteiros e retorna a soma desses dois valores como um inteiro. Este método deverá ter a seguinte assinatura:

def somar(a, b):
  # sua implementação aqui
}
Após a implementação do método somar(), peça ao usuário para informar dois números inteiros. Em seguida faça uma chamada ao método somar() passando os dois valores como argumentos, obtenha o retorno e exiba-o.

Sua saída deverá ser parecida com:

Informe o primeiro número: 4
Informe o segundo número: 3
A soma dos dois números é: 7
Resposta/Solução:

Veja a resolução comentada deste exercício usando Python:

# método que recebe dois inteiros e retorna a soma como um número inteiro
def somar(a, b):
  soma = a + b # soma os dois números
  return soma # retorna a soma para o método chamador

# função principal do programa
def main():
  # vamos pedir ao usuário que informe dois valores inteiros
  n1 = int(input("Informe o primeiro número: "))
  n2 = int(input("Informe o segundo número: "))
  
  # vamos efetuar uma chamada ao método somar() e obter seu retorno
  resultado = somar(n1, n2)
    
  # finalmente mostramos o resultado
  print("A soma dos dois números é: {0}".format(resultado))
  
if __name__== "__main__":
  main()



Revit Python Shell ::: Dicas & Truques ::: Grupos - Groups

Como copiar grupos no Revit usando a função Create.PlaceGroup() e o Revit Python Shell

Quantidade de visualizações: 80 vezes
O código que apresento nesta dica mostra como podemos pedir para o usuário selecionar um grupo na área de desenho do Revit e, em seguida, usando a API do Revit e o Revit Python Shell, criar uma cópia do grupo escolhido e posicioná-la em um ponto escolhido pelo usuário.

Em realidade, este código é o mesmo apresentado no tutorial "Como criar seu primeiro plug-in no Revit usando a Revit C# API" da documentação oficial fornecida pela Autodesk. O que fiz foi modificar o código para usar Revit Python Shell em vez de C#, como mostrado no tutorial.

O primeiro passo é importar o objeto ObjectType a partir do módulo Autodesk.Revit.UI.Selection. Em seguida nós usamos __window__.Hide() para que o foco vá para a janela do Revit. Isso é necessário para que o usuário possa selecionar um grupo usando uidoc.Selection.PickObject. Note que coloquei uma mensagem TaskDialog.Show() chamando a atenção do usuário para esta tarefa.

Como a função PickObject() retorna um objeto Reference, nós precisamos fornecer essa referência para a função doc.GetElement() e assim obter o elemento real que queremos manipular. Então, o passo seguinte é pedir para o usuário indicar um ponto na tela de desenho do Revit usando a função uidoc.Selection.PickPoint(). Esta função vai nos retornar um objeto da classe XYZ da API do Revit.

Depois que o usuário selecionar o grupo e o ponto, nós criamos uma nova transação usando Transaction(doc, "Copiar grupo") e a iniciamos com uma chamada à sua função Start(). Então, para concluir, basta uma chamada à doc.Create.PlaceGroup(ponto, grupo.GroupType) e verificar o resultado na tela de desenho do Revit.

Veja o código Revit Python Shell completo para o exemplo:

# faz o import necessário
from Autodesk.Revit.UI.Selection import ObjectType

# precisamos ocultar a janela do Revit Python Shell
__window__.Hide()

# agora fazemos uma chamada à função PickObject() do objeto Selection e retornamos
# uma Reference
TaskDialog.Show("Aviso", "Selecione um grupo")
selecionado = uidoc.Selection.PickObject(ObjectType.Element, "Selecione um grupo")
# obtemos o grupo a partir de sua referência usando a função
# GetElement() do objeto Document
grupo = doc.GetElement(selecionado)
# vamos pedir para o usuário selecionar um ponto na área de
# desenho do Revit
TaskDialog.Show("Aviso", "Selecione um ponto")
ponto = uidoc.Selection.PickPoint("Selecione um ponto para posicionar o grupo")
 
# criamos uma nova transação e posicionamos a cópia do
# grupo nas coordenadas indicadas pelo usuário
transacao = Transaction(doc, "Copiar grupo")
# iniciamos a transação
transacao.Start()
# copiamos o grupo selecionado pelo usuário e o colocamos no
# ponto indicado
doc.Create.PlaceGroup(ponto, grupo.GroupType)
# fechamos a transação
transacao.Commit()
 
# e mostramos o resultado
TaskDialog.Show("Aviso", "O grupo foi copiado com sucesso") 
  
# depois que o usuário fizer a seleção nós mostramos a janela do
# Revit Python Shell novamente 
__window__.Show() 
__window__.Topmost = True



Veja mais Dicas e truques de Revit Python Shell

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

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



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