|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - rchamy
Páginas: [1]
1
« en: Domingo 21 de Septiembre de 2008, 17:52 »
Muchas gracias! se pasaron, y si no di una respuesta antes era porque estuve demasiado ocupado, pero en cuanto tuve tiempo lo hice me ayudo muchos sus comentarios y respuestas para hacer funcionar mi codigo muchas gracias!! Adios
2
« en: Martes 16 de Septiembre de 2008, 01:06 »
Muchas gracias, estoy en eso, tambien estaba tratando de convertir de decimal a binario, con un arreglo, pero me da un error te mando el codigo #include <stdio.h> #include <stdlib.h> int main() { int a[15],n,c=0,j=14; printf("ingrese numero decimaln"); scanf("%d",&n); for(c=0;c<=14;c++) { a[c]=n%2; n=n/2; } printf("Su numero binario es:n"); for(j=14;j>=0;j--) { printf("%d",a[j]); } system("PAUSE"); return EXIT_SUCCESS; }
y este es el error que me da: por ejemplo si coloco el numero 10 deberia salir 1010 base2 pero me sale 000000000001010 no se como quitar los ceros del principio ojala puedas ayudarme
3
« en: Lunes 15 de Septiembre de 2008, 23:12 »
A ver, no estoy siguiendo el hilo por completo, pero la mejor forma de hacer todo lo que quieres es trabajar con cadenas. Es decir, cuando tu preguntes por un número binario, acepta una cadena que sólo tenga unos y ceros. Luego esa cadena la puedes convertir al tipo adecuado mediante las funcionoes de C y C++ como atoi (ASCII to Integer), etc.
Lo mismo cuando sean otros números en otras bases. Cuando tengas la cadena, la recorres a ver si contiene dígitos válidos (por ejemplo, no aceptar nada mayor a 7 cuando pidas una cadena en octal, etc).
Y si tienes ganas, defines un formato, por ejemplo: "101001b2" sería un número en base 2, "877AF3b16" en hexadecimal, etc. E incluso podrías adelantarte y hacer un parser matemático completo. Por ejemplo: "toDec(10100b2)". y cosas así. ahora si que mori entendi si es que la mitad de lo que me dijiste, disculpa en todo caso, tengo toda la intencion de aprender y pongo todo de mi parte, estoy averiguando por internet, manuales, profesores, amigos y todo lo que pueda. L o que pasa es que estoy recien empezando en C, y no se hacer todo lo que me dijiste, lo que me pidieron fue usar ciclos para las transformaciones, y para eso necesito separar el numero ingresado por digitos porfavor ayudenme, estoy realmente perdido, pero el esfuerzo lo estoy haciendo agradezco toda su ayuda, a los dos y al que responda el tema
4
« en: Lunes 15 de Septiembre de 2008, 21:33 »
Gracias por responderme, de verdad agradezco tu ayuda... ahora, para explicarme mejor, necesito sumar, dividir, multiplicar, restar y potenciar numeros reales, pero las conversiones deben ser enteras. Mi problema esta en que si me ingresan un numero, por ejemplo en la conversion de binario a decimal, seria algo como esto: Ingrese numero binario: 0101 Su numero en decimal es: y el numero Pero...como tomo esos 0101 de a uno??? porque primero necesito el 1, despues el 0 y asi sucesivamente, y lo que me tomaria ahi seria el 0101 como un solo número...no se si me entiendas, es complicado,porque no quiero que tenga que presionar Intro entre cada dígito, y como estoy recien empezando no conozco ningún comando para hacer lo que deseo. Ojala puedas ayudarme, de verdad te agradezco la preocupación. Aca te dejo el codigo un poco modificado pra empezar a hacer las conversiones, le falta mucho si, pero es la idea #include <stdio.h> #include <stdlib.h> int main() { int op,c=1,n3,conver; float n,n2,result,mult; char r='n'; printf("tt----CALCULADORA----n"); do{ printf("ttt----n"); printf("tttMENUnn"); printf("1=Sumartt7= Dec-->Bint13=Oct-->Binn"); printf("2=Restart8= Dec-->Octt14=Oct=Decn"); printf("3=Multiplicart9= Dec-->Hext15=Oct-->Hexn"); printf("4=Dividirt10=Bin-->Dect16=Hex-->Binn"); printf("5=Potenciat11=Bin-->Octt17=Hex-->Decn"); printf("6=SALIRtt12=Bin-->Hext18=Hex-->Octn"); printf("tt----------------n"); printf("ttElija su opcion:"); scanf("%i",&op); switch(op) { case 1: printf("Ingrese primer numero:");scanf("%f",&n); printf("Ingrese segundo numero:");scanf("%f",&n2); result=n+n2; printf("Resultado:%.fn",result); r='s'; break; case 2: printf("Ingrese primer numero:");scanf("%f",&n); printf("Ingrese segundo numero:");scanf("%f",&n2); result=n-n2; printf("Resultado:%.fn",result); r='s'; break; case 3: printf("Ingrese primer numero:");scanf("%f",&n); printf("Ingrese segundo numero:");scanf("%f",&n2); result=n*n2; printf("Resultado:%.fn",result); r='s'; break; case 4: printf("Ingrese primer numero:");scanf("%f",&n); printf("Ingrese segundo numero:");scanf("%f",&n2); result=n/n2; printf("Resultado:%.2f",result); r='s'; break; case 5: result=1; printf("Ingrese numero base:");scanf("%f",&n); printf("Elevado a:");scanf("%f",&n2); for(c=1;c<=n2;c++){ result=result*n; } printf("Resultado:%.f",result); r='s'; break; case 6: printf("Graciasn"); r='n'; break; case 7: //Esto me falta terminar, todos los otros case, pero necesito eso que te dije arriba para ver como lo puedo hacer printf("Ingrese numero:"); scanf("%i",n3); default: printf("Opcion erronea, vuelva a intentarlon"); r='s'; } }while(r=='s'); system("PAUSE"); return EXIT_SUCCESS; }
5
« en: Lunes 15 de Septiembre de 2008, 10:01 »
los numeros son enteros, le coloque float por lo anterior(division, multiplicacion, suma, resta, etc) pero las conversiones son enteras gracias por responder tan rapido ojala puedas ayudarme
6
« en: Lunes 15 de Septiembre de 2008, 08:43 »
Holaaa, soy nuevo en el foro, y me inscribi porq me lo recomendaron,espero que me puedan ayudar, necesito estu urgente me pidieorn una calculadora, que haga lo basico (sumar, restar, multiplicar, dividir y potenciar ), solo dos digitos(ejemplo sumar: 1+1=2) pero tambien me piden que convierta numeros dec--->bin dec--->oct dec--->hex bin--->dec bin--->oct bin--->hex oct--->dec oct--->bin oct--->hex hex--->oct hex--->bin hex--->dec y aqui es donde muero , no se, ni se me ocurre como hacerlo, tiene que ser con ciclos, no con librerias, si pueden ayudarme se los agradeceria mucho de antemano muchas gracias aaa!! coloco el codigo de lo que he hecho, por cualquier ayudita que me hagan o recomendacion #include <stdio.h> #include <stdlib.h> int main() { int op,c=1; float n,n2,result,mult; char r='n'; printf("tt----CALCULADORA----n"); do{ printf("tt----n"); printf("ttMENUn"); printf("t1=Sumarnt2=Restarnt3=Multiplicarnt4=Dividirnt5=Potenciant6=SALIRn"); printf("tElija su opcion:"); scanf("%i",&op); switch(op) { case 1: printf("Ingrese primer numero:");scanf("%f",&n); printf("Ingrese segundo numero:");scanf("%f",&n2); result=n+n2; printf("Resultado:%.fn",result); r='s'; break; case 2: printf("Ingrese primer numero:");scanf("%f",&n); printf("Ingrese segundo numero:");scanf("%f",&n2); result=n-n2; printf("Resultado:%.fn",result); r='s'; break; case 3: printf("Ingrese primer numero:");scanf("%f",&n); printf("Ingrese segundo numero:");scanf("%f",&n2); result=n*n2; printf("Resultado:%.fn",result); r='s'; break; case 4: printf("Ingrese primer numero:");scanf("%f",&n); printf("Ingrese segundo numero:");scanf("%f",&n2); result=n/n2; printf("Resultado:%.2f",result); r='s'; break; case 5: result=1; printf("Ingrese numero base:");scanf("%f",&n); printf("Elevado a:");scanf("%f",&n2); for(c=1;c<=n2;c++){ result=result*n; } printf("Resultado:%.f",result); r='s'; break; case 6: printf("Graciasn"); r='n'; break; default: printf("Opcion erronea, vuelva a intentarlon"); r='s'; } }while(r=='s'); return EXIT_SUCCESS; }
Páginas: [1]
|
|
|