Autor
|
Tema: While de numeros hasta introducir uno más pequeño (Leído 2,794 veces)
|
sora_ori
Desconectado
Mensajes: 269
|
Buenas, No consigo hacer este programa en C: - Escribir numeros por teclado
- Acabará cuando el ultimo numero sea más pequeño que el anterior introducido
- Nos dira la largada de escala, es decir, todos los numeros introducidos excepto el ultimo.
Ejemplo: 3, 5, 6, 6, 8, 9, 11, 4 El programa termina cuando introducimos el número 4, y nos responderá 7, que es la cantidad de números que hemos entrado antes del 4. #include <stdio.h> #include <stdlib.h> #include <time.h> int main(){ int num1, num2; int i=0; while (num2 <= num1){ printf("Escribe un numero: "); num2 = num1; if (num2 <= num1){ i++; } } printf("Se han contado %d veces", i -1); return 0; }
|
|
|
En línea
|
|
|
|
pacoperico
Desconectado
Mensajes: 100
|
Estas usando las variables num1 y num2 antes de darles cualquier valor. Por ejemplo puedes hacer un do..while en lugar del while que tienes.
|
|
« Última modificación: 18 Abril 2013, 21:54 pm por pacoperico »
|
En línea
|
|
|
|
leosansan
Desconectado
Mensajes: 1.314
|
Sin entrar en memoria dinámica para abreviar, esto podría servirte, creo:#include <stdio.h> #include <stdlib.h> int main(){ int num1 ,num2; int i=0; printf("Escribe un numero: "); scanf("%d", &num1); for (i=1;;i++){ printf("Escribe un numero: "); scanf("%d", &num2); if (num2<num1) break; else num1=num2; } printf("Se han contado %d veces", i); printf("\n\n"); system("pause"); return 0; }
Saluditos!. .... P.D: Perdón, era con un while:#include <stdio.h> #include <stdlib.h> int main(){ int num1 ,num2; int i=0; printf("Escribe un numero: "); scanf("%d", &num1); while (1){ i++; printf("Escribe un numero: "); scanf("%d", &num2); if (num2<num1) break; else num1=num2; } printf("Se han contado %d veces", i); printf("\n\n"); system("pause"); return 0; }
Saluditos otra vez ....
|
|
« Última modificación: 18 Abril 2013, 22:03 pm por leosansan »
|
En línea
|
|
|
|
sora_ori
Desconectado
Mensajes: 269
|
Perdón por revivir el tema... Estoy haciendo este ejercicio en Python y me da error en el bucle. SOLUCIONADO!#!/usr/bin/env python num1 = input('Escribe un numero: ') i=0 while (True): i=i+1 num2 = input('Escribe un numero: ') if (num2<num1): break else: num1=num2 print 'Se han contado',i,'veces'
|
|
« Última modificación: 19 Noviembre 2013, 13:53 pm por sora_ori »
|
En línea
|
|
|
|
leosansan
Desconectado
Mensajes: 1.314
|
Supongo que estas usando Python 3.X, más que nada por el uso que haces del input. Pues bien, Lo único que aparentemente te falla es la ausencia de los paréntesis en la instrucción print, que debería ser: print ('Se han contado',i,'veces')
Con esa simple corrección el código se ejecuta sin problemas. Saluditos!!¡...
|
|
« Última modificación: 19 Noviembre 2013, 16:59 pm por leosansan »
|
En línea
|
|
|
|
sora_ori
Desconectado
Mensajes: 269
|
Ya lo había solucionado, gracias por la ayuda de todos modos Lo había editado el msg con el código correcto. Saludos
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
datagridview Permitir introducir únicamente números
.NET (C#, VB.NET, ASP)
|
BlaineMonkey
|
1
|
2,358
|
11 Febrero 2010, 18:09 pm
por BlaineMonkey
|
|
|
como hacer para introducir solo numeros
« 1 2 »
Programación C/C++
|
Komodo
|
15
|
26,975
|
14 Septiembre 2010, 01:31 am
por Shell Root
|
|
|
Como sumo los numeros de un entero hasta que me de "n" numeros (Resuelto)
« 1 2 »
Programación C/C++
|
¡Micronet!
|
18
|
10,815
|
16 Noviembre 2010, 00:26 am
por ¡Micronet!
|
|
|
Busco como poder introducir comandos desde mi pc hasta otro que este conectad a
Hacking
|
HoppelesPirate
|
1
|
2,584
|
3 Mayo 2016, 09:37 am
por interference
|
|
|
introducir n numeros reales en c
Programación C/C++
|
lili00
|
2
|
2,167
|
13 Marzo 2018, 05:37 am
por dariodr01
|
|