|
921
|
Programación / Programación C/C++ / Re: Digitos de un numero en C
|
en: 28 Marzo 2013, 15:39 pm
|
............... como puedo obtener todos los digitos de un numero en c?
Pues se que dividiendo entre 10 se pueden ir obteniendo los digitos pero como obtengo el ultimo?
Y por qué no multiplicando:#include <stdio.h> #define N 10 int main( void ) { int c, i, n; int digitos[N]; int num; printf( "Escribe un numero de %d digitos como maximo: ", N ); fflush( stdout ); num = 0; for( n = 0; n < N && (c = getchar()) != '\n'; ++n ) { digitos[n] = c - '0'; num *= 10; num += digitos[n]; } printf( "Digitos: " ); for( i = 0; i < n; ++i ) printf( " %d,", digitos[i] ); printf( "\b "); putchar('\n'); printf( "Numero: %d\n", num ); return 0; }
Saluditos!. ....
|
|
|
922
|
Programación / Programación C/C++ / Re: AYUDA CON UN LIGERO PROBLEMA PARA IMPRIMIR VARIOS VALORES
|
en: 27 Marzo 2013, 07:51 am
|
lo que pasa es que tengo que meter un numero n de datos, y al detenerme, sinceramente no se como, pero al detenerse que genere el polinomio con esos coeficientes :S
#include <stdio.h>, #include <stdlib.h> #definr N 5 int main(int argc, char *argv[]) { float a[N]={0}; int i,c; c=0; do { scanf("%f", &a[c]); if (a[c]==1122) break; c++; }while (1); for (i=0;i<c;i++){ if (a[i]==0) continue; if ( a[i]==1) printf("%g+", a[i]); else printf("%gx^%d+", a[i], i); } printf(" \b\b\n") ; system("PAUSE"); return 0; }
Saluditos! ...
|
|
|
923
|
Programación / Programación C/C++ / Re: Problema semicirculo para realizar un salto en video juego.
|
en: 14 Marzo 2013, 04:08 am
|
Suponiendo que el salto arranca del 1 en x , y llega a 10 en x , en 5 de x tendria que estar el punto más alto del salto , que luego disminueria a medida que valla avanzando.. osea, en 5 de x , Y disminueria hasta llegar a 10 de ex . siendo y 0 para el entonces. ( En el piso ).
Mientras y aumenta hasta 5 de x, dismunuye en semetria ..
Hay algun patron , o formula para hacer un semicirculo en el salto , osea que valla aumentando en forma de parabola hasta llegar a 5 de x y dismuir en forma de parabola hasta llegar a 10 de x ?.. ...............................................
Las coordenadas de los puntos serian: y=4.5^2 - (x-5.5)^2 ..... con x variando de 1 a 10
Saluditos!. ...
|
|
|
924
|
Programación / Programación C/C++ / Re: Tabla en C++
|
en: 11 Marzo 2013, 23:26 pm
|
Por cierto, ¿hay alguna manera de borrar este tema?
No me parece justa tu proposición. Toda la ayuda que se te ha brindado ha sido desinteresada y pública y si alguien más la puede aprovechar mejor para todos. Sin esa premisa yo al menos no aportaría nada.
Saluditos!. ...
|
|
|
925
|
Programación / Programación C/C++ / Re: Problema con un codigo que no funciona como debe hacerlo
|
en: 11 Marzo 2013, 05:28 am
|
......................................................................... lo de "ban" significa banderas que me lo dieron en la universidad que significa que cuando la bandera vale 0 es falso y cuando vale 1 o es diferente de 0 es verdadero. No es una función del C es algo que se implementa por el usuario y se usa para paliar la falta de una variable tipo bool en C, a diferencia del C++ que sí la incorpora. Por eso la tienes mal implementada en el código. En esencia funciona cuando le asignamos el valor 0 si ocurre tal cosa o el valor 1 si ocurre esta otra cosa luego, según el valor 0 o 1 que tenga tomamos una decisión u otra, pero eres tú el que en el código tienes que implementar todo eso.Otro temita que entiendo es por que en esta parte del codigo: do { if(aux==expediente[k]) { printf("\n\nEl expediente %d tiene una beca de tipo %c",expediente [k ],beca [k ]); break; }
la parte del "break" lo tuve que incluir porque si no lo incluia, al momento de dar la salida de la beca del estudiante, la da pero nunca terminaba.......................... Eso es porque tienes mal implementada la variable ban, por ejemplo:k=0; ban=0; do { system("cls"); printf("\n\nIngrese el No. del expediente a consultar: "); scanf("%d",&aux); if(aux==expediente[k]) { printf("\n\nEl expediente %d tiene una beca de tipo %c",expediente[k],beca[k]); ban=1; } else ++k; }while( !ban && k<i); if (!ban) printf("\n\nEl Expediente buscado no existe!!! ");
Saluditos!. ...
|
|
|
926
|
Programación / Programación C/C++ / Re: AYUDA CON VARIABLES CHAR
|
en: 10 Marzo 2013, 22:57 pm
|
y para que quieres que sea char ?
.............................
Porque es una variable que va a tomar el valor de un caracter 's' u otro, como creo que está meridiana mente claro en el código que postee más arriba.
De cualquier manera, ya durasno se lo dejo claro por activa y por pasiva.
Saluditos!, ,,,
|
|
|
927
|
Programación / Programación C/C++ / Re: Tabla en C++
|
en: 10 Marzo 2013, 22:28 pm
|
Gracias!
De nada. Por cierto, al final logré alinear el texto: 1ªh 2ªh 3ªh Juan 5.2 6.2 8.0 La nota media de Juan es 6.7 Pepe 6.1 7.0 8.0 La nota media de Pepe es 7.2 Antonio 3.7 2.6 4.0 La nota media de Antonio es 3.4 Ana 8.0 8.6 9.0 La nota media de Ana es 8.6 Alfonso 2.3 2.4 3.0 La nota media de Alfonso es 2.6 Mercedes 7.2 7.7 8.7 La nota media de Mercedes es 8.0 El alumno con mas nota media es Ana con 8.6 puntos El alumno con menos nota media es Alfonso con 2.6 puntos
Saluditos!. ....
|
|
|
928
|
Programación / Programación C/C++ / Re: Números capicúa
|
en: 10 Marzo 2013, 22:06 pm
|
Cuando introduzco un número de más de cuatro cifras se me cierra el programa ¿A qué se debe? A que he puesto un return, ¿o querías hacer algo si es de más de cuatro cifras?. Porfi, explica mejor lo que quieres hacer.
Saluditos!. ...
|
|
|
929
|
Programación / Programación C/C++ / Re: Ayuda con calculadora básica en C
|
en: 10 Marzo 2013, 22:02 pm
|
............................................................ Como veran, el programa pide meter digito por digito, es decir, ingresar "a" y dar enter, luego ingresar la operacion, ya sea "+", "-", "*" o "/" y dar enter, despues ingresar "b" y dar enter. Quiero que sea capaz de ingresar "a", la operaciony "b" en un solo paso. Por favor y gracias :/
Para eso está la función sscanf. Por ejemplo:#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { float a, b, c; char o, r, entrada[81]=""; while (1){ fgets( entrada,80,stdin); sscanf( entrada, "%f%c%f ",&a,&o,&b ); if (o=='+') printf("%g", a+b); if (o=='-') printf("%g", a-b); if (o=='*') printf("%g", a*b); if (o=='/') { if (b==0) { printf("Division no definida para b = 0"); break; } else printf("%g", a/b); } } return 0; }
Saluditos!. ...
|
|
|
930
|
Programación / Programación C/C++ / Re: Números capicúa
|
en: 10 Marzo 2013, 20:07 pm
|
Gracias leosansan! ¿Pero cómo se haría para que, al decirme que tiene más de cuatro cifras, no me diga si es capicúa o no?
Entiendo que si tiene más de cuatro cifras "pasas" de comprobar si es o no capicua. Con es premisa:#include<iostream> using namespace std; int main() { int numero0, numero1, numero2,numero_reves; cout<<"Introduce el numero: "; cin>>numero0; if (numero0/10000.>=1){ cout<<"Tiene mas de cuatro cifras. Adios"<<endl; reurn 1; } numero1 = numero2 =numero0; numero_reves = 0; while( numero1 > numero_reves && numero2 > numero_reves ) { numero_reves = 10 * numero_reves + numero1 % 10; numero2=numero1; numero1 /= 10; } if( numero1 == numero_reves || numero2 == numero_reves) cout<<"Es capicua "<< numero0; else cout<<"No es capicua "<< numero0; { } cin.get( ); cin.get( ); return 0; }
Saluditos, otra vez.....
|
|
|
|
|
|
|