|
93
|
Programación / Programación C/C++ / Problema con este programa, me aparece un mensaje de error.
|
en: 21 Enero 2012, 01:45 am
|
Tengo un problema con un programa que calcula signos zodiacales. # include <stdio.h> # include <conio.h>
int main()
{ int a; int ACUARIO; int ACUARIO1; int Piscis; int Piscis1; int Aries; int Aries1; int Tauro; int Tauro1; int Geminis; int Geminis1; int Cancer; int Cancer1; int Leo; int Leo1; int Virgo; int Virgo1; int Libra; int Libra1; int Escorpio; int Escorpio1; int Sagitario; int Sagitario1; int Capricornio; int Capricornio1; int Capricornio2; int Capricornio3; a = 0; ACUARIO = 0121; ACUARIO1 = 0219; Piscis = 0220; Piscis1 = 0319; Aries = 0320; Aries1 = 0420; Tauro = 0421; Tauro1 = 0521; Geminis = 0522; Geminis1 = 0622; Cancer = 0623; Cancer1 = 0722; Leo = 0723; Leo1 = 0823; Virgo = 0824; Virgo1 = 0923; Libra = 0924; Libra1 = 1023; Escorpio = 1024; Escorpio1 = 1122; Sagitario = 1123; Sagitario1 = 1221; Capricornio = 1222; Capricornio1 = 1231; Capricornio2 = 0101; Capricornio3 = 0120; printf("Con este programa usted podra saber su signo zodiacal\n"); printf("Ahora, de su mes y dia de nacimiento, colocando primero el mes, y luego el dia, sin separarlos\n"); printf("Ejemplo: Si usted nacio el 10 de enero, usted colocara 0110.\n"); scanf("%d",&a); if(a >= ACUARIO and a <= ACUARIO1) { printf("Tu signo zodiacal es Acuario"); getch(); return 0; } if(a >= Piscis and a <= Piscis1) { printf("Tu signo zodiacal es Piscis"); getch(); return 0; } if(a >= Aries and a <= Aries1) { printf("Tu signo zodiacal es Aries"); getch(); return 0; } if(a >= Tauro and a <= Tauro1) { printf("Tu signo zodiacal es Tauro"); getch(); return 0; } if(a >= Geminis and a <= Geminis1) { printf("Tu signo zodiacal es Geminis"); getch(); return 0; } if(a >= Cancer and a <= Cancer1) { printf("Tu signo Zodiacal es Cancer"); getch(); return 0; } if(a >= Leo and a <= Leo1) { printf("Tu signo zodiacal es Leo"); getch(); return 0; } if(a >= Virgo and a <= Virgo1) { printf("Tu signo zodiacal es Virgo"); getch(); return 0; } if(a >= Libra and a <= Libra1) { printf("Tu signo zodiacal es Libra"); getch(); return 0; } if(a >= Escorpio and a <= Escorpio1) { printf("Tu signo zodiacal es Escorpio"); getch(); return 0; } if(a >= Sagitario and a <= Sagitario1) { printf("Tu signo zodiacal es Sagitario"); getch(); return 0; } if(a >= Capricornio and a <= Capricornio1) { printf("Tu signo zodiacal es Capricornio"); getch(); return 0; } if (a >= Capricornio2 and a <= Capricornio3) { printf("Tu signo zodiacal es Capricornio"); getch(); return 0; } }
Con todas las constantes que estan ahi, me da mensaje de error a las que tienen numeros con 8 y 9. Me aparece este mensaje de error: invalid digit in octal constant. Porque???
|
|
|
95
|
Programación / Programación C/C++ / Re: Otro problema en un programa, no entiendo porque.
|
en: 20 Enero 2012, 22:53 pm
|
Ya lo hice y anda perfecto, gracias
Una duda
Porque habia que usar or ahi???
Y con el else no me andaba, por eso puse if.
EI: juntando mensajes, la proxima vez borro.
Ahora estoy averiguando como hacer para que el programa solo acepte numeros. En wikipedia dice que hay especificadores para eso, y que d es el que sirve para eso. Pero eso no se refiere acaso a "%d"???. Si fuese asi, mi programa solo aceptaria numeros para la variable a, pero al contrario, tambien acepta letras.
Porque???
|
|
|
98
|
Programación / Programación C/C++ / Re: Funcion Pow
|
en: 20 Enero 2012, 22:14 pm
|
Gracias por todo, ya probe y entendi la funcion, es que las explicaciones que ponen en internet estan diseñadas para gente experta, no novata, jaja.
|
|
|
99
|
Programación / Programación C/C++ / Otro problema en un programa, no entiendo porque.
|
en: 20 Enero 2012, 22:14 pm
|
# include <stdio.h> # include <conio.h>
int main()
{ int a; int b; int c; a = 0; b = 100; c = 1; printf("De un valor a la variable a\n"); scanf("%d",&a); if(a <= b and a >= c) { printf("La variable a esta entre 1 y 100"); getch(); } if(a >= b and a <= c) { printf("La variable a no esta entre 1 y 100"); getch(); } }
He empezado con if then else, y quise probar esto. Pero por alguna razon, me saltea el segundo if si no se cumple el primero, es decir si a es mayor a 100 y menor a 1, el programa se cierra. Si es menor a 100 y mayor a 1, funciona bien. Porque???
|
|
|
|
|
|
|