C/Visual C - ayuda..conversion de bases..URGENTE!!

   
Vista:

ayuda..conversion de bases..URGENTE!!

Publicado por cloud (3 intervenciones) el 20/10/2007 22:14:53
Holas, para la utu me mandaron hacer un proyecto que es el siguiente:
Se desea desarrollar un software que permita cambiar de base a un número entre binario, decimal y hexadecimal.

El software debe:
· Ser desarrollado en Lenguaje C
· Tener un menú con al menos 4 opciones:
1. Convertir de Decimal a Binario
2. Convertir de Binario a Decimal
3. Convertir de Decimal a Hexadecimal
4. Convertir de Hexadecimal a Decimal

La información:
· Los números binarios y hexadecimales deben ser almacenados en string (vectores)
· El largo de estos números debe ser limitado y validados
· Los números decimales deben ser limitados y validados
· No se pueden usar variables cuyo nombre esté en inglés.

Lo que voy haciendo hasta ahora es esto:

#include<stdio.h>
#include<conio.h>

void main()
{
int nDec,nBin,nHex,i,v[15];
int res,numero,c,opcion,x=15,y=4;
long int residuo,resultado,numero1,binario,hexa;
float potencia10;
int a=10,b=11,d=13,e=14,f=15; //c=12 no lo puse xq me dice ya esta declarado... no se xq
char otra;
do
{
clrscr();
gotoxy(x,y+1);printf("1.-convertir de decimal a binario");
gotoxy(x,y+2);printf("2.-convertir de binario a decimal");
gotoxy(x,y+3);printf("3.-convertir de decimal a hexadecimal ");
gotoxy(x,y+4);printf("4.-convertir de hexadecimal a decimal");
gotoxy(x,y+5);printf("opcion: ");
gotoxy(x+7,y+5);scanf("%d",&opcion);
switch(opcion)
{

case 1:
clrscr();
printf("Ingrese un numero decimal:");
scanf("%i",&nDec);
for(i=0;i<=14;i++){
v[i]=nDec%2;
nDec=nDec/2;
}
gotoxy(1,3);
printf("Su numero en binario es: ");
for(nBin=14;nBin>=0;nBin--){
printf("%d",v[nBin]);
}
break;

case 2:
clrscr();
printf("Ingrese un numero decimal:");
scanf("%i",&nBin);
for(i=0;i<=14;i++){
v[1]=nBin%16;
nBin=nBin/16;
}
if(numero==10){
numero=a;
}

if(numero==11){
numero=b;
}
if(numero==12){
numero=c;
}
if(numero==13){
numero=d;
}
if(numero==14){
numero=e;
}
if(numero==15){
numero=f;
}
gotoxy(1,3);
printf("Su numero en hexadecimal es: ");
for(nHex=14;nBin>=0;nBin--){
printf("%d",v[nHex]);
}
break;

//case 3:
//case 4:

gotoxy(x,y+5);printf(" deseas realizar otra operacion s/n: ");
otra=getche();
}
while (otra=='s');

getch();
}while (otra=='s');
}

--------------------------------------------

El programa convierte de decimal a binario 15 digitos lo mas bien, pero de decimal a hexadecimal muestra cualquier cosa y no tengo ni idea del porque.
Tampoco no se como pasar de bianrio a decimal y de hexa a decimal.
Este proyecto lo tengo que entregar el lunes 22/10/07 alguien me puede ayudar a sacar los errores??? si me pueden ayudar en terminar el programa mejor.
bueno gracias... espero sus respuestas
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:conversion de bases.gracias por no ayudar

Publicado por cloud (3 intervenciones) el 23/10/2007 01:59:02
Se nota que aca nadie sabe un carajo...
gracias por no ayudar... = ya lo termine
salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:conversion de bases.gracias por no ayudar

Publicado por fernando.gomez (1604 intervenciones) el 23/10/2007 03:34:58
Si te hubieses tomado la molestia en buscar la información en google, te habrías dado cuenta de que existen las funciones itoa y ltoa que hacen precísamente lo que quieres. Pero si tú no te tomas la molestia de investigar algo tan básico, ¿por qué habríamos de hacerlo nosotros? Además, qué te crees, ¿que todos estamos a tu disposición? Muchos aquí estudian, otros trabajan, y otros hacemos ambas cosas. Si quieres a alguien que te resuelva problemas cuando lo necesites, te sugiero que contrates a alguien para no tener estos problemas.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:conversion de bases.gracias por no ayudar

Publicado por cloud (3 intervenciones) el 23/10/2007 03:45:24
Si ya se que existe itoa... pero lo tenia que hacer a mano.
Yo no pedi q resuelvan el codigo, solo pedia una guia de como seguir xq estaba pintado.
Decis q estudias, trabajas y q no tenes tiempo para responder "podes usar itoa" pero si tenes tiempo para responder boludeces...
= ya fue... ya lo hice...
salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:conversion de bases.gracias por no ayudar

Publicado por fernando.gomez (1604 intervenciones) el 23/10/2007 04:01:29
Sí, en ocasiones tengo tiempo, en otras no. Hoy lo tuve hasta llegar a mi casa, a pesar de que son casi las diez de la noche, heme aquí, tratando de ayudar. Y así hay muchos. Como dije, quienes participamos en el foro respondemos por el gusto de hacerlo, no porque sea nuestra obligación.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar