ro_marques 0 Denunciar post Postado Maio 25, 2008 olá pessol sou nova por aqui, mas me registrei pq achei legal... bom eu tenho uma duvida pra montar um algoritmo em visualg, a gente tem que ler um valor em reais (dinheiro) e dividi-lo nas cedulas existentes, mas naum pode usar vetor... alguem sabe me ajudar??? Compartilhar este post Link para o post Compartilhar em outros sites
Raphael_Suporte 0 Denunciar post Postado Maio 26, 2008 na verdade você usa um loop do maior para o menor... por exemplo eu tenho 120 e tenho que dividir... vou fazer um loop com as notas existentes primeiro divido por 100 depois por 50, 20 10 5 2 1..... e vou guardando as notas numa outra variavél quantas notas vou usar de 100, 10, 50 e por ai Compartilhar este post Link para o post Compartilhar em outros sites
ro_marques 0 Denunciar post Postado Maio 26, 2008 eu intendi a ideia é q na pratica naum ta funcionando... da uma olhada no q eu fiz.....algoritmo "dinheiro" // Função : // Autor :roberta // Data : 22/5/2008 // Seção de Declarações var valor,v100,v50,v20,v10,v5,v2,v1,v050,v025,v010,v005,v001,aux,nvalor,n2valor,n3va lor,n4valor,n5valor,n6valor,n7valor,n8valor,n9valor,n10valor,n11valor:real inicio escreva("digite o valor em reais: ") leia(valor) se (valor>=100) entao aux:= (valor / 100) v100:=int(aux) nvalor:=valor-(v100*100) aux:=0 se (nvalor>=50)entao aux:= (nvalor/50) v50:=int(aux) n2valor:=nvalor-(v50*50) aux:=0 se (n2valor>=20)entao aux:= (n2valor/20) v20:=int(aux) n3valor:=n2valor-(v20*20) aux:=0 se (n3valor>=10)entao aux:= (valor/10) v10:=int(aux) n4valor:=n3valor-(v10*10) aux:=0 se (valor>=5)entao aux:= (valor/5) v50:=int(aux) n5valor:=n4valor-(v5*5) se (valor>=2)entao aux:= (valor/2) v50:=int(aux) n6valor:=n5valor-(v2*2) se (valor>=1)entao aux:= (valor/1) v50:=int(aux) n7valor:=n6valor-(v1*1) se (valor>=(1/2))entao aux:= (valor/(1/2)) v50:=int(aux) n8valor:=n7valor-((v050*(,50) se (valor>=(1/4))entao aux:= (valor/(1/4)) v50:=int(aux) n9valor:=n8valor-((v025*(1/4)) se (valor>=(1/10))entao aux:= (valor/(1/10)) v50:=int(aux) n10valor:=n9valor-((v010*(1/10)) se (valor>=(1/20))entao aux:= (valor/(1/20)) v50:=int(aux) n11valor:=n10valor-((v005*(1/20)) v001:=aux fimse fimse fimse fimse fimse fimse fimse fimse fimse fimse fimse escreval(v100) escreval(v50) escreval(v20) escreval(v10) escreval(v5) escreval(v2) escreval(v1) escreval(v050) escreval(v025) escreval(v010) escreval(v005) escreval(v001) fimalgoritmo Compartilhar este post Link para o post Compartilhar em outros sites
Raphael_Suporte 0 Denunciar post Postado Maio 26, 2008 você precisa fazer um loop... que só para quando o valor = 0 Compartilhar este post Link para o post Compartilhar em outros sites
ro_marques 0 Denunciar post Postado Maio 26, 2008 nuam intendi....."desenha"";....... Compartilhar este post Link para o post Compartilhar em outros sites
ro_marques 0 Denunciar post Postado Maio 26, 2008 raphael...eu vo pro trab... lah eu acesso...ok??? mas se você puder.. me ajuda..... Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 26, 2008 no q eu entendi faça algo assim: Se (dindin > 0) faça se (dindin >= 100) então x_100 <- dindin / 100; dindin <- dindin - (x_100*100); fim_se se (dindin >= 50) então x_50<- dindin / 50; dindin <- dindin - (x_50*50); fim_se . .bom hj minha lógica esta fraquinha pq to cheio de coisa pra pensar!naum to usando loop nesse caso! a lógica é essa + ow - :lol: []'s Compartilhar este post Link para o post Compartilhar em outros sites
Raphael_Suporte 0 Denunciar post Postado Maio 26, 2008 é verdade não precisa do loop não... o modo como o quit Fez tb chega lá Compartilhar este post Link para o post Compartilhar em outros sites
ro_marques 0 Denunciar post Postado Maio 26, 2008 valeu... vou tentar fazer... entaum eu tenho q fechar o se antes??? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 26, 2008 valeu... vou tentar fazer... entaum eu tenho q fechar o se antes???como assim fechar o 'se' antes??qnd você for fazer o codigo vai identando ele senaum fica muito treta fechar os blocos! []'s Compartilhar este post Link para o post Compartilhar em outros sites
ro_marques 0 Denunciar post Postado Maio 26, 2008 valeu... vou tentar fazer... entaum eu tenho q fechar o se antes???como assim fechar o 'se' antes??qnd você for fazer o codigo vai identando ele senaum fica muito treta fechar os blocos! []'s ta desculpa..... viajei... mas assim... eu preciso dividir ovalor q sobrou por 0,50 centavos... (R$2,00/0,05) mas naum sei como fazer isso...... Compartilhar este post Link para o post Compartilhar em outros sites
NaPraia 12 Denunciar post Postado Maio 26, 2008 eu preciso dividir ovalor q sobrou por 0,50 centavos... (R$2,00/0,05) mas naum sei como fazer isso......continua fazendo o exemplo que o quit postou, só que ele só postou para 100 e 50 reais.continua, fazendo para 20, 10, 5, 2 e 1 real e de 50, 25, 10, 5 e 1 centavo. Compartilhar este post Link para o post Compartilhar em outros sites
ro_marques 0 Denunciar post Postado Maio 26, 2008 ta até ae eu intendi... mas é que naum consigo ividir o valor.... Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 27, 2008 ué ele vai passar pelos 'se' ai você coloca dindin / <valor> Compartilhar este post Link para o post Compartilhar em outros sites
ro_marques 0 Denunciar post Postado Maio 27, 2008 eu consegui fazer usando o "enquanto"... deu certo... meu professor disse q pode ser de qualquer jeito desde q funcione..... valeu pela ajuda galera.... Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Maio 28, 2008 http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif q bom q conseguiw! Compartilhar este post Link para o post Compartilhar em outros sites