Autor
|
Tema: Trabajo universidad (Leído 4,046 veces)
|
georginho30
Desconectado
Mensajes: 9
|
Hola buenas, tengo un trabajo en la universidad en el que se me pide que programe en C. Se me pide que pida unos números al usuario y que luego estos números sean multiplicados en relación al lugar que ocupan (um*1, centenas *2, decenas *3...) y posteriormente me pide que calcule el total de la suma de estas multiplicaciones por cada número. Yo sé dividir un número en dígitos pero cuando tengo que sumarlos luego después de haberlos multiplicado no sé como se hace. Muchas gracias
|
|
|
En línea
|
|
|
|
K-YreX
|
Si sabes dividir el número en digitos, no tiene mayor complicación. Supongo que usas un bucle para separar los dígitos. Entonces crea otra variable <suma = 0> fuera del bucle y en cada iteración acumula ahí el resultado del producto. Te dejo a continuación un pseudocódigo para que te hagas una idea. (No es código C, solo es un esquema conceptual de tu algoritmo) PEDIR numero suma := 0 PARA i := 1 HASTA longitud(numero) HACER digito := obtenerDigito(i, numero) suma := suma + digito * i FIN PARA Ahora solo tienes que implementar el código anterior en lenguaje C. Si tienes alguna duda es mejor que incluyas tu código para poder ayudarte; además de porque no se hacen tareas, por lo que no vamos a darte el código completo si no aportas nada.
|
|
|
En línea
|
cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
|
|
|
georginho30
Desconectado
Mensajes: 9
|
muchas gracias. Y para multiplicar los dígitos en una cadena el primero por uno asía hasta nueve y el último dígito por cero, como se haría para multiplicar ese último dígito por cero? Ya que se usas un for se multiplicaría por 10
|
|
|
En línea
|
|
|
|
K-YreX
|
Si lo que quieres es multiplicar por un conjunto finito de valores {1,2,3,4,5,6,7,8,9,0} y después volver a empezar por el 1 otra vez la mejor manera es utilizar el operador %. La operación a%b devuelve el resto de dividir a/b y por las reglas de la división: el resto siempre será menor que el divisor. Si haces a%10=b, para cualquier a se cumplirá b < 10. for(int i = 1; i <= 20; ++i){ }
Salida: 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0
|
|
|
En línea
|
cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
|
|
|
georginho30
Desconectado
Mensajes: 9
|
también me piden que cree un menú para acceder a los diferentes ejercicios. dentro de uno de ellos, me pide que si el usuario mete un valor no válido se termine el ejercicio y se vuelva al menú principal, pero pongo exit(0) y se termina el programa. que código debo usar?
|
|
|
En línea
|
|
|
|
K-YreX
|
Para preguntas que no estén relacionadas las unas con las otras es mejor que abras un nuevo tema y especifiques su contenido en el título para que sea descriptivo.
Todo depende de cómo tengas estructurado el código. Obviamente si utilizas la función exit() el programa finalizará. Puedes hacerlo con un bucle controlado por una condición de validez o si el código se encuentra en otra función, puedes volver a la función que la llamó mediante un return.
Si incluyes tu código aunque sea de forma simplificada (lo necesario para poder visualizar tu problema) será más fácil concretarte una forma de hacerlo.
PD: Para insertar código utiliza las etiquetas de Código GeSHi y selecciona el lenguaje de programación adecuado.
|
|
|
En línea
|
cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Ayuda. Trabajo Universidad
Programación C/C++
|
Anarq
|
2
|
2,429
|
1 Enero 2017, 17:02 pm
por ThinkByYourself
|
|
|
Necesito ayuda, tengo un problema con mi trabajo de universidad,error jcombobox
Java
|
Docs
|
1
|
2,159
|
5 Diciembre 2018, 02:37 am
por rub'n
|
|
|
El último fraude académico: webs que te hacen el trabajo de la universidad
Noticias
|
wolfbcn
|
5
|
5,433
|
5 Febrero 2020, 10:30 am
por FJDA
|
|
|
Trabajo de la universidad
Programación C/C++
|
Zeta255
|
2
|
2,601
|
23 Marzo 2021, 19:05 pm
por Zeta255
|
|
|
Programa para trabajo de la universidad, urgenteee!!!
Dudas Generales
|
Emmet01921
|
2
|
2,812
|
22 Noviembre 2021, 22:37 pm
por Emmet01921
|
|