Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística

Como converter de decimal para números romanos em Java - Desafio de Programação Resolvido em Java

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

Escreva um programa Java que pede para o usuário informar um número inteiro decimal e converta-o para o número romano correspondente.

Sua saída deverá ser parecida com:

Informe um número decimal: 2023
O número romano correspondente é: MMXXIII 
Resposta/Solução:

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

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);

    // vamos criar um array com os valores decimais possíveis de
    // cada número romano
    int valoresNumerosRomanos[] = new int[]{1000, 900, 500, 400,
      100, 90, 50, 40, 10, 9, 5, 4, 1};

    // representação dos números romanos
    String numerosRomanos[] = new String[]{"M", "CM", "D", "CD",
      "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};

    // vamos pedir para o usuário informar um número decimal
    System.out.print("Informe um número decimal: ");
    int numero = Integer.parseInt(entrada.nextLine());

    // para guardar o resultado
    String resultado = "";

    // o número é maior que zero?
    if (numero > 0) {
      // percorremos o array de valores decimais dos números romanos
      for(int i = 0;i < valoresNumerosRomanos.length; i++){ 
        // enquanto o número informado for maior que o valor do
        // do número romano atual
        while(numero >= valoresNumerosRomanos[i]){  
          // reduz o número informado
          numero = numero - valoresNumerosRomanos[i];  
          // concatena o número romano e continua o cálculo
          resultado = resultado + numerosRomanos[i];  
        }  
      }
    }
    
    // mostramos o resultado
    if(resultado.isEmpty()){
      System.out.println("O número informado não possui número romano");
    }
    else{
      System.out.println("O número romano correspondente é: " + resultado);
    }
  }
}


Link para compartilhar na Internet ou com seus amigos:

VB.NET ::: Dicas & Truques ::: Strings e Caracteres

Como inverter o conteúdo de uma string em VB.NET usando os métodos ToCharArray() e Reverse()

Quantidade de visualizações: 7676 vezes
Nesta dica mostrarei como podemos tirar proveito do método ToCharArray() da classe String e do método Reverse() da classe Array do VB.NET para inverter a ordem dos caracteres de uma palavra, frase ou texto.

Note que criamos uma função personalizada InverterString() que recebe uma string, a inverte e devolve uma nova string com a ordem dos caracteres invertida.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

Imports System

Module Program
  Sub Main(args As String())
    ' vamos declarar uma string
    Dim frase As String = "Gosto de VB.NET"

    ' mostramos a frase original
    Console.WriteLine("Frase original: " & frase)

    ' inverte o conteúdo da string
    frase = InverterString(frase)

    ' mostramos a frase invertida
    Console.WriteLine("A frase invertidade é: " & frase)

    Console.WriteLine(vbCrLf & "Pressione qualquer tecla para sair...")
    ' pausa o programa
    Console.ReadKey()
  End Sub

  ' Função que recebe uma string e a devolve invertida
  Function InverterString(ByVal str As String) As String
    Dim invertida As String
    Dim arrChar() As Char = str.ToCharArray()
    Array.Reverse(arrChar)
    invertida = arrChar
    Return invertida
  End Function
End Module

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

Frase original: Gosto de VB.NET
A frase invertidade é: TEN.BV ed otsoG


Python ::: Dicas & Truques ::: Rotinas de Conversão

Como converter uma string para um valor numérico inteiro usando a função int() do Python

Quantidade de visualizações: 20253 vezes
Em algumas situações precisamos converter uma string ou a entrada do usuário para um valor inteiro. Isso pode ser feito por meio da função nativa int(). Esta função recebe uma string (conjunto de dígitos, letras e símbolos) e a converte (ou pelo menos tenta) em um valor inteiro.

Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

"""
  Este trecho de código mostra como
  ler dois valores informados pelo usuário,
  convertê-los para inteiros e efetuar
  uma soma.
 
  A função int() é usada para converter uma string
  ou valor numérico para um inteiro.
"""

def main():
  # vamos ler os dois valores
  val1 = input("Informe o primeiro número: ")
  val2 = input("Informe o segundo número: ")
  soma = int(val1) + int(val2);
 
  print("A soma dos valores é: ", soma)

if __name__== "__main__":
  main()

A saída deste código será parecida com:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

Informe o primeiro número: 12
Informe o segundo número: 8
A soma dos valores é:  20

Note que, por padrão, a função int() converte a string para um valor inteiro usando a base 10, ou seja, a base decimal. É possível fornecer uma base diferente. Veja, por exemplo, como ler uma string contendo um valor binário:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

def main():
  # vamos ler um valor binário. Ex: 0101
  binario = input("Informe um valor binário: ")
  print("O valor lido foi:", int(binario, 2))

if __name__== "__main__":
  main()

O resultado da execução desse código será algo como:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

Informe um valor binário: 0101
O valor lido foi: 5



C ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade)

Exercício Resolvido de C - Um método recursivo que conta de 0 até 10

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

Escreva um método recursivo que conta e exibe os valores de 0 até 10. Seu método deverá possuir a seguinte assinatura:

void contar_recursivamente(int n){
  // sua implementação aqui
}
Veja que o método deverá receber o valor 0 e efetuar novas chamadas a si mesmo até que os valores de 0 a 10 sejam exibidos. O ponto de parada da recursividade é a exibição do valor 10.

Sua saída deverá ser parecida com:

0  1  2  3  4  5  6  7  8  9  10
Resposta/Solução:

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

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>
  
// método recursivo que conta de 0 até 10;
void contar_recursivamente(int n){
  // vamos exibir o número atual
  printf("%d  ", n);
    
  // devemos prosseguir com a recursividade?
  if(n < 10){
    // incrementa o valor de n
    n++;  
    contar_recursivamente(n); // e faz uma nova chamada recursiva
  }
}  
  
// método principal do programa  
int main(int argc, char *argv[]){
  // efetua uma chamada ao método recursivo fornecendo o primeiro valor
  contar_recursivamente(0);
  
  printf("\n\n");
  system("pause");
  return 0;
}



C++ ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como usar vetores e matrizes (arrays) na linguagem C++

Quantidade de visualizações: 37264 vezes
Vetores e matrizes, também chamados de arrays em programação, são grupos consecutivos de locais na memória que possuem o mesmo tipo de dados, ou seja, um vetor ou matriz em C++ pode conter apenas elementos do mesmo tipo.

Um vetor é uma matriz de um coluna e várias linhas, enquanto uma matriz é a matriz propriamente dita, ou seja, que possui várias linhas e várias colunas.

Veja um trecho de código no qual temos um vetor contendo 5 elementos do tipo int:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
  // declara e inicializa a matriz
  int valores[5] = {65, 3, 8, 41, 12};
 
  // exibe os elementos da matriz
  for(int i = 0; i < 5; i++){
    cout << "Posição: " << i <<
      " - Valor: " << valores[i] << endl;
  }
 
  system("PAUSE"); // pausa o programa
  return 0;
}

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

Posição: 0 - Valor: 65
Posição: 1 - Valor: 3
Posição: 2 - Valor: 8
Posição: 3 - Valor: 41
Posição: 4 - Valor: 12
Pressione qualquer tecla para continuar. . .

Aqui nós usamos a técnica de declarar e inicializar o vetor em uma mesma linha. Em seguida usamos um laço para percorrer todos os elementos. Veja que os elementos do vetor são acessados usando um índice que começa em 0 e vai até a quantidade de elementos menos 1.

Veja agora um trecho de código que declara um vetor e inicializa seus elementos usando um laço for:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
  // declara a matriz
  int valores[5];
 
  // inicializa os elementos usando um laço
  for(int i = 0; i < 5; i++){
    valores[i] = 2 * i;
  }
 
  // exibe os elementos da matriz
  for(int i = 0; i < 5; i++){
    cout << "Posição: " << i <<
      " - Valor: " << valores[i] << endl;
  }
 
  system("PAUSE"); // pausa o programa
  return 0;
}

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

Posição: 0 - Valor: 0
Posição: 1 - Valor: 2
Posição: 2 - Valor: 4
Posição: 3 - Valor: 6
Posição: 4 - Valor: 8
Pressione qualquer tecla para continuar. . .

É importante notar que, se não inicializados, os valores dos elementos de um vetor poderão guardar valores aleatórios. Jamais confie que eles terão o valor 0 por padrão.


C# ::: Dicas & Truques ::: Gráficos

Como desenhar retângulos em C# usando a função DrawRectangle() da classe Graphics do C# - Computação Gráfica em C#

Quantidade de visualizações: 10801 vezes
Retângulos podem ser desenhados em C# e Windows Forms usando o método DrawRectangle() da classe Graphics. Este método pede a caneta de desenho (um objeto da classe Pen), as coordenadas do canto superior esquerdo e a largura e altura do retângulo. Veja a assinatura do método DrawRectangle() mais comumente usada:

Graphics.DrawRectangle(Pen, Single, Single, Single, Single)


Veja um trecho de código no qual desenhamos um retângulo com 250 pixels de largura por 150 pixels de altura:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button1_Click(object sender, EventArgs e){
  // vamos obter o Graphics do formulário
  Graphics g = this.CreateGraphics();

  // vamos desenhar um retângulo de 250 pixels de largura por 150
  // pixels de altura
  g.DrawRectangle(new Pen(Color.Red, 1), 50, 50, 250, 150);

  // vamos liberar o objeto Graphics
  g.Dispose();
}

As coordenadas do canto superior esquerdo e a largura e altura do retângulo podem ser especificadas como um objeto da estrutura Rectangle. Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button1_Click(object sender, EventArgs e){
  // vamos obter o Graphics do formulário
  Graphics g = this.CreateGraphics();

  // vamos desenhar um retângulo de 250 pixels de largura por 150
  // pixels de altura
  g.DrawRectangle(new Pen(Color.Red, 1), 
    new Rectangle(100, 100, 250, 150));

  // vamos liberar o objeto Graphics
  g.Dispose();
}



Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

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á 107 usuários muito felizes estudando em nosso site.