E ai vai o primeiro:
Bits Trocados
Em um pequeno país do planeta Cyber , a moeda vigente é o bit cuja sigla é B$. Nesta moeda existem cédulas de B$25.00, B$15.00, B$2.00 e B$1.00 bits. Você foi contratado para implementar o sistema de saques em um caixa eletrônico e, para isso, você deverá sempre liberar o menor número de notas possíveis para um determinado valor solicitado. O seu algoritmo terá como dado de entrada o valor a ser retirado do caixa e deverá emitir o total de cada nota necessário para compor o valor solicitado (emitindo o mínimo possível de notas).
Obs: Nenhum saque poderá exceder B$1000.00 bits.
Resolvi esse exercìcio em java depois de uns 15 dias ele ficou assim e funcionando bem:
import java.util.Scanner;
public class CaixaEletronico {
Scanner scanInt = new Scanner(System.in);
public void saque() {
int nota25 = 0, nota15 = 0, nota2 = 0, nota1 = 0;
System.out.println("Informe o valor que deseja sacar:");
int valor = scanInt.nextInt();
if (valor > 1000) {
System.out.println("SAQUE NAO REALIZADO! Valor invalido");
} else if (valor <= 0) {
System.out.println("SAQUE NAO REALIZADO! Valor invalido");
} else {
int valorAux = valor;
int resto = 0, divisao = 0;
if (valorAux >= 25) {
divisao = valorAux / 25;
nota25 = divisao;
resto = valorAux % 25;
valorAux = resto;
}
if (valorAux >= 15) {
divisao = valorAux / 15;
nota15 = divisao;
resto = valorAux % 15;
valorAux = resto;
}
if (valorAux >= 2.0) {
divisao = valorAux / 2;
nota2 = divisao;
resto = valorAux % 2;
valorAux = resto;
}
if (valorAux >= 1.0) {
nota1 = valorAux;
valorAux = valorAux - nota1;
}
System.out.println("SAQUE VALIDO! VOCE DEVERA RECEBER:");
if (nota25 > 0) {
System.out.println(nota25 + " cedula(s) de B$25");
}
if (nota15 > 0) {
System.out.println(nota15 + " cedula(s) de B$15");
}
if (nota2 > 0) {
System.out.println(nota2 + " cedula(s) de B$2");
}
if (nota1 > 0) {
System.out.println(nota1 + " cedula(s) de B$1");
}
}
}
public static void main(String args[]){
new CaixaEletronico();
}
}
Edição feita por: Rubia Matos, 30/11/2011, 16:41.