Foros de daboweb
MULTIMEDIA, Video digital, Grabación, Diseño gráfico, Diseño web, Programación => Webmasters - Diseño Web - Programación - Diseño gráfico => Mensaje iniciado por: DaDa en 06 de Septiembre de 2005, 02:39:56 pm
-
Saludos, acabo de iniciarme en esto de la programación y todavía no he empezado y ya tengo el primer problema, al grano.
He compilado un programa de un manual, la compilación y creación del ejecutable ha sido correcta y no me ha dado ningún error, utilizo un programa llamado Dev-C++ ver 4.9.9.2
El problema viene cuando ejecuto el programa, el sistema se queda un instante parado y me sale la ventanita con el error puesto en el asusto.
El sitema operativo es Windows XP, y el programa en cuestión es este:
#include <stdio.h>
#include <math.h>
int main(void)
{
int a, b, i;
float s;
/* Pedir límites inferior y superior */
printf ("Límite inferior:");
scanf ("%d , &a");
while (a < 0) {
printf ("No puede ser negativo\n");
printf ("Límite inferior:");
scanf ("%d , &a");
}
printf ("Límite superior:");
scanf ("%d , &h");
while (b < a) {
printf ("No puede ser menor que %d\n" , a);
printf ("Límite superior:");
scanf ("%d , &h");
}
/* Calcular sumatorio de la raíz cuadrada de i para i entre a y b */
s = 0.0;
for (i = a; i <= b; i++) {
s += sqrt(i);
}
/* Mostrar resultados */
printf ("Sumatorio de raíces ");
printf ("de %d a %d: %f\n" , a, b, s);
return 0;
}
Puede decirme alguien qué es lo que hago mal?????
Muchas gracias
-
...hola, no te preocupes esto sucede...pondre en negrilla lo que puede estar mal...
#include <stdio.h>
#include <math.h>
int main(void)
{
int a, b, i;
float s;
/* Pedir límites inferior y superior */
printf ("Límite inferior:");
scanf ("%d, &a"); //scanf ("%d", &a); las comillaswhile (a < 0) {
printf ("No puede ser negativo\n");
printf ("Límite inferior:");
scanf ("%d, &a"); //scanf ("%d", &a); las comillas
}
printf ("Límite superior:");
scanf ("%d , &h");//scanf ("%d", &h); las comillas
while (b < a) { //
printf ("No puede ser menor que %d\n" , a);
printf ("Límite superior:");
scanf ("%d , &h");//scanf ("%d", &h); las comillas , aqui deberia salirte error al compilar, no esta definida h, creo que aqui deberia ser b
}
/* Calcular sumatorio de la raíz cuadrada de i para i entre a y b */
s = 0.0;
for (i = a; i <= b; i++) { //noas leido b
s += sqrt(i);
}
/* Mostrar resultados */
printf ("Sumatorio de raíces ");
printf ("de %d a %d: %f\n" , a, b, s);
return 0;
}
...cre que esos pueden ser los errores, normalmente, cuando haces una operacion sobre una variable y esta no esta inicializada, puede generarte errores de memoria del sistema, para esto puedes inicializar todas las variables al momento de declararlas:
int a=0, b=0;
float s=0.0;
... :wink: ...
-
Así es, eran las dichosas comillas.
Un saludo y muchísimas gracias por tu ayuda.