Bien tengo este programa que realize usando un manual basico de lenguaje C bueno no soy muy bueno en esto asi que , les pido ayuda. quiero hacer que el usuario ingrese el (APR) Anual y que este no sea fijo . Que pueda entrar distintos APR. y no se como hacerlo intente con Decimal.Parse(Console.Readline()); pero no me funciono...
agradezco la ayuda Aqui esta lo que tengo hasta ahora:
using System;
namespace millon
{
class Program
{
static void Main(string[] args)
{
string ou;
do
{
//Declarar las variables a usar
Console.Clear();
double balance = 0;
int anos = 0;
//Encabezado....
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("| Determinar los anos requeridos para llegar a ser millonario |");
Console.WriteLine("***********************************************************************");
Console.WriteLine();
Console.WriteLine(" *NOTA* ");
Console.WriteLine(" Calculo realizado utilizando: ");
Console.WriteLine(" Deposito Inicial : #,###,###,## ");
Console.WriteLine(" APR de 7% anual. ");
Console.WriteLine(" -------------------------------- ");
Console.WriteLine("Entre la cantidad de deposito, luego presione 'Enter' para calcular. ");
Console.WriteLine("--------------------------------");
//Entrada de Datos
Console.WriteLine("Entre la cantidad del deposito:");//Entrar cantidad de balance
balance = Int32.Parse(Console.ReadLine());
Console.WriteLine("--------------------------------");
//Loops para contar los anos ...
while (balance < 1000000)
{
balance = balance + (0.07 * balance);//calculo
anos = anos + 1;//counter
}
//Salida . imprimir en pantalla la cantidad de anos necesarios ....
Console.WriteLine(" En " + anos + " anos usted tendra la cantidad de $1 millon de dolares.");
Console.WriteLine();
Console.WriteLine("***********************************************************************");
Console.WriteLine();
Console.WriteLine("| Desea salir del programa si o no ?? (S/N) |");
ou = Console.ReadLine();
} while (ou == "n" || ou == "N");
}
}
}
Gracias de antemano...
Me parece que no se hace de esa manera amigo, bueno al menos en java para leer un flujo de entrada, tienes que crear un flujo de datos, la verdad no se com se hace en C, solo en java... Eso seguro esta en google, deberias empezar a buscar ahi :rolleyes:
saludos
TU RESPUESTA ME CONFUNDE , YA QUE NO ME AYUDA EN NADA O NO CONTESTA MI PREGUNTA. SE QUE EN JAVA HAY Q CREAR UN FJUJO DE DATOS. PERO NO SE COMO SE HACE ESO EN C. ES POR ESO QUE ESTOY PREGUNTANDO EN ESTE FORO. SI SUPIERA NO ESTARIA EN UN FORO PIDIENDO AYUDA.
NO PRETENDO QUE ME DIGAN LO QUE YA SE... LA PREGUNTA ES SI NO SE HACE ASI COMO SE HACE ? .... ALGUIEN SABE ? O ME VAN A ENVIAR PARA GOOGLE?
*A POCO CONOCIMIENTO SOLUCIONES RAPIDAS..(GOOGLE) . ¿ESTOY EN UN FORO DE ESTUDIANTES O DE PROGRAMADORES????....
Para empezar nadie esta obligado a responder, simplemente armigerum.umbra a hecho un comentario y tu respondes de ese modo :¬¬
Si vas a trabajar con decimales, entonces no declares un entero (int) declara un double :rolleyes:
Saludos
Hola,
para leer de consola, es como estabas intentando, no sé que problema te dará, pero es correcto: Decimal interes = Decimal.Parse(Console.ReadLine());
De todos modos, como ha dicho Novlucker, igual es más cómodo trabajar con doblesdouble interes = double.Parse(Console.ReadLine())/100.0;
Tampoco hace falta el bucle, con unas pocas mates :)double años = Math.Ceiling(Math.Log(1000000 / balance, 1 + interes));
Ahí habría que controlar que el balance introducido fuera mayor que 0, pero en tu código también, que si no se mete en un bucle infinito.