Autor
|
Tema: Duda con este codigo... (Leído 2,238 veces)
|
RSA
Desconectado
Mensajes: 2
|
Buenas gente! Como van? Espero que todo bien! Tengo una duda, como veran a continuacion en el ejercicio, soy principiante, me pide que imprima todas las tablas del 1 al 9, elabore el codigo pero no se si esta bien, ya que al compilar no hace lo que realmente pide el ejercicio, espero alguno pueda decirme si ve algun error o algo, saludos! # include <stdio.h> # include <stdlib.h> main() { int a=1, b=1, total=1; while (a<10) { printf ("%d x %d = %d \n "), b, a, total; a=a+1; if (a=10) { a=1; b=b+1; } if (b=10) { a=100; } total=a*b; } system ("PAUSE"); return 0; }
|
|
|
En línea
|
|
|
|
ecfisa
Desconectado
Mensajes: 114
|
Hola RSA. Necesitas que la variable b tome valores de 1 hasta 10 por cada incremento de la variable a, por lo que vas a necesitar un while anidado para obtenerlos. #include <stdio.h> main() { int a=1, b; while (a < 10) { printf("Tabla del %2d \n------------\n",a ); b = 0; while (b++ < 10) printf ("%2d x %2d = %2d \n", b , a , a *b ); a++; } return 0; }
Saludos.
|
|
|
En línea
|
|
|
|
SokarTefnut
Desconectado
Mensajes: 124
|
El printf lo estas usando mal, deberia ser printf ("%d x %d = %d \n ", b, a, total); En las lineas resaltadas estas realizando una asignacion de valor, con el operador (=), deberias utilizar el operador de comparacion (==)
# include <stdio.h> # include <stdlib.h> main() { int a=1, b=1, total=1; while (a<10) { printf ("%d x %d = %d \n "), b, a, total; // cambiar por printf ("%d x %d = %d \n ", b, a, total); a=a+1; // puesdes usar a++ if (a=10) // debes utilizar if (a==10) { a=1; b=b+1; } if (b=10) // debes utilizar if (b==10) { a=100; } total=a*b; } system ("PAUSE"); return 0; }
|
|
« Última modificación: 20 Septiembre 2012, 10:40 am por SokarTefnut »
|
En línea
|
|
|
|
0xDani
Desconectado
Mensajes: 1.077
|
Y algo que no te han dicho, y en realidad es una tonteria, pero en C/C++ en vez de a=a + 1; puedes hacer a++.
Saludos.
|
|
|
En línea
|
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!
I code for $$$ Hago trabajos en C/C++ Contactar por PM
|
|
|
RSA
Desconectado
Mensajes: 2
|
Hola RSA. Necesitas que la variable b tome valores de 1 hasta 10 por cada incremento de la variable a, por lo que vas a necesitar un while anidado para obtenerlos. #include <stdio.h> main() { int a=1, b; while (a < 10) { printf("Tabla del %2d \n------------\n",a ); b = 0; while (b++ < 10) printf ("%2d x %2d = %2d \n", b , a , a *b ); a++; } return 0; }
Saludos. Muchas gracias por tu ayuda! Lo he probado y si, funciona, ahora, para que sirve la siguiente linea? Es que todavia no la hemos dado, o sea supongo que si resuelvo el codigo con cosas que supuestamente no hemos aprendido, no se si me lo acepten... getchar(); Saludos! El printf lo estas usando mal, deberia ser printf ("%d x %d = %d \n ", b, a, total); En las lineas resaltadas estas realizando una asignacion de valor, con el operador (=), deberias utilizar el operador de comparacion (==)
# include <stdio.h> # include <stdlib.h> main() { int a=1, b=1, total=1; while (a<10) { printf ("%d x %d = %d \n "), b, a, total; // cambiar por printf ("%d x %d = %d \n ", b, a, total); a=a+1; // puesdes usar a++ if (a=10) // debes utilizar if (a==10) { a=1; b=b+1; } if (b=10) // debes utilizar if (b==10) { a=100; } total=a*b; } system ("PAUSE"); return 0; }
Gracias por tu ayuda! Y si, definitivamente el error mas grande era que solo usaba un = y debia ir ==, al cambiarlo me ha funcionado perfectamente, muchisimas gracias!! Y algo que no te han dicho, y en realidad es una tonteria, pero en C/C++ en vez de a=a + 1; puedes hacer a++.
Saludos.
Puede ser mas comodo, lo sabia pero no suelo usarlo por falta de costumbre, hace unos meses aprendi algo en pseudocodigos y siempre usabamos a<- a+1, por esta cuestion, de usarlo asi, creo que me acostumbre e intento hacerlo asi en c++ pero bueno, capaz me tenga que acostumbrar mas al c++ y dejar de lado las costumbres que aprendi en pseudocodigos y usar mas que nada codigos de este lenguaje, muchisimas gracias crack! Ahora me queda seguir aprendiendo mas cosas, para ir avanzando un poco =)
|
|
|
En línea
|
|
|
|
ecfisa
Desconectado
Mensajes: 114
|
para que sirve la siguiente linea? Hola RSA getchar() espera un caracter de la entrada estandar, en este caso cumple la misma finalidad que system ("PAUSE"). Saludos.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Tengo una duda en este codigo para hacer fuerza bruta en vb.......
Programación Visual Basic
|
ZaPa
|
4
|
6,337
|
23 Febrero 2010, 02:12 am
por Nanoc
|
|
|
[Duda] Insertar a este código, Mensaje de Error en caso de...
Programación Visual Basic
|
Soir
|
4
|
2,169
|
15 Agosto 2010, 00:15 am
por Fitoschido
|
|
|
Duda con este codigo
Programación Visual Basic
|
[Kayser]
|
2
|
1,641
|
26 Enero 2012, 00:15 am
por raul338
|
|
|
[Duda existencial]¿Que pasa en este codigo?
Programación C/C++
|
0xDani
|
5
|
2,365
|
10 Julio 2012, 13:47 pm
por 0xDani
|
|
|
Duda con este codigo
Programación C/C++
|
exanime
|
6
|
2,288
|
16 Septiembre 2014, 18:30 pm
por flony
|
|