Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.
Autor
|
Tema: EJERCICIOS BASICOS C++ (Leído 13,253 veces)
|
WiseHidden
Desconectado
Mensajes: 183
La curiosidad es la semilla de la genialidad.
|
Hola, La idea de este Tema es para todos aquellos que estemos empezando en el maravilloso mundo de la Programación C++, expongamos nuestros Ejercicios y nos ayudemos cuando sea necesario y asi de un modo mas amenos aprendamos unos de los otros. Mi primer ejercicio es muy sencillo (Pues apenas estoy empezando a gatear en C++) Asi pues expongo un Ejercicio "Creado expresamente por mi". Se pide que Creemos un programa en el cual se Introduzca el Total de Votos "Recogidos" En la ultima campaña politica. El resultado debe dar con los siguientes resultado. 40% Para el Primer Partido Politico (A vuestro gusto) 30% Para el Segundo Partido Politico (A vuestro gusto) 20% Para el tercer Partido Politico (A vuestro gusto) 10% Para el Cuarto Partido Politico (A vuestro gusto) PD: Mi programa el cual expondré a continuación el muy simple, si hay viera algun pequeño fallo, o algun comando innecesario o incluso si pudiera aportar algo nuevo agradeceria cualquier ayuda u orientación Nota: Esto es un simple ejercicio no importa quien sea el partido con mas o menos votos, No intento fomentar una idea politica u otra De hecho "Tengo cierto reparo con ella" jajaja Solo que me pareció un buen ejercicio para empezar #include <iostream.h> int main () { float v,p,s,c,i; cout<<"Introduce el total de votos:"<<endl; cin>>v; p=v*40/100; cout<<"El total de votos del PP es:"<<p<<endl; s=v*30/100; cout<<"El total de votos del Psoe es:"<<s<<endl; c=v*20/100; cout<<"El total de votos del Partido Comunista es:"<<c<<endl; i=v*10/100; cout<<"El total de votos del Izquierda Unida es:"<<i<<endl; } Un saludo y espero os animeis WiseHidden
|
|
|
|
« Última modificación: 3 Diciembre 2010, 18:48 por Novlucker »
|
En línea
|
Si tu tienes una manzana y yo otra y decidimos intercambiarlas, seguiremos teniendo una manzana cada uno, pero si tu tienes una idea y yo otra y la intercambiamos, ambos tendremos dos ideas. (Origen Anónimo)
|
|
|
Garfield07
Desconectado
Mensajes: 1.123
¡Este año voy a por todas! JMJ 2011
|
Bueno, acabo de ver tu code de pasada y esta muy bien. A lo mejor podrias hacer que se puedan meter x numeros de partidos, y se vayan metiendo el nombre de los partidos, y el porcentaje, y se haga todo con esos datos... Digo yo, vamos. Sinceramente esta muy bien...
|
|
|
|
|
En línea
|
 * Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente. * No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado. * Si compila esta bien, si arranca es perfecto. ¡Wiki elhacker.net!Un saludo
|
|
|
Tzhed\ Kyperf/
Wiki
Desconectado
Mensajes: 800
Tzhed > /dev/sda
|
Puedes hacerlo con una sola variable.
|
|
|
|
|
En línea
|
|
|
|
Garfield07
Desconectado
Mensajes: 1.123
¡Este año voy a por todas! JMJ 2011
|
#include <stdio.h> int main () { float total, a; printf ("Introduce el total de votos: "); scanf ("%d", &total); a = total * 40 / 100; printf ("El total de votos del PP es: %d", a); a = total * 30 / 100; printf ("El total de votos del PSOE es: %d", a); a = total * 20 / 100; printf ("El total de votos del Partido Comunista es: %d", a); a = total * 10 / 100; printf ("El total de votos de IU es: %d", a); return 0; } Ahi va TzHed xD... Podrias retocarlo para lo que te he dicho...
|
|
|
|
|
En línea
|
 * Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente. * No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado. * Si compila esta bien, si arranca es perfecto. ¡Wiki elhacker.net!Un saludo
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.507
El Dictador y Verdugo de H-Sec
|
Sagrini estas utilizando dos variables, la variable a y la variable total. #include <stdio.h> int main () { float total; printf ("Introduce el total de votos: "); scanf ("%d", &total); printf ("El total de votos del PP es: %d", total*0.4); printf ("El total de votos del PSOE es: %d", total*0.3); printf ("El total de votos del Partido Comunista es: %d", total*0.2); printf ("El total de votos de IU es: %d", total/10); return 0; }
|
|
|
|
« Última modificación: 26 Enero 2011, 23:48 por Lord R.N.A. »
|
En línea
|
|
|
|
Garfield07
Desconectado
Mensajes: 1.123
¡Este año voy a por todas! JMJ 2011
|
Si, cierto. Eso lo pense luego, una vez ido, para mas sencillez, pero no me di cuenta que Tzhed se referia a eso... Bueno, ahora que hemos limpiado y reducido el code, podriamos hacer lo que dije en el primer post no?
|
|
|
|
|
En línea
|
 * Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente. * No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado. * Si compila esta bien, si arranca es perfecto. ¡Wiki elhacker.net!Un saludo
|
|
|
WiseHidden
Desconectado
Mensajes: 183
La curiosidad es la semilla de la genialidad.
|
Disculpen todo este tiempo en espera!! Pero he andado muy liado, veo que el post acojio a unos cuantos "amantes" de este maravilloso lenguaje. Me alegra ver que ha gustado, pero tambien veo un poco parado el tema, asi pues si alguien sigue interesado en la propuesta inicial porfavor que sea bienvenido.
PD: Sagrini, a que te refieres?? No se exactamente lo que proponias en el primer post? Disculpa pero hace unos meses y he perdido un poco el hilo de la conversacion.
Un saludo
Vuestro Fiel amigo
WH
|
|
|
|
|
En línea
|
Si tu tienes una manzana y yo otra y decidimos intercambiarlas, seguiremos teniendo una manzana cada uno, pero si tu tienes una idea y yo otra y la intercambiamos, ambos tendremos dos ideas. (Origen Anónimo)
|
|
|
Eckonet
Desconectado
Mensajes: 1
ProgramerNewBie
|
Yo lo hice algo parecido a [L]ord [R]NA la unica diferencia es que el uso C pero a la final da los mismos Resultados =) #include <iostream> using namespace std; int main() { int q; cout << "Introduce el total de votos obtenidos: " << endl; cin >> q; cout << endl; cout << "El total de votos del PPT es: " << q*50/100 << "%" <<endl; cout << "El total de votos del ASD es: " << q*40/100 << "%" <<endl; cout << "El total de votos del EZT es: " << q*30/100 << "%" <<endl; cout << "El total de votos del PAE es: " << q*20/100 << "%" <<endl; cout << "El total de votos del SOL es: " << q*10/100 << "%" <<endl; cin.get();cin.get(); } Tambien lo queria hacer de este modo pero no me resulto muy bien por falta de conocimiento xD #include <iostream> using namespace std; int main() { int A, B, C, D, E; cout << "Esta aplicacion te dira cuanto porcentaje tiene tu partido politico favorito:" << endl; cout << "Para ver el porcentaje de votos de PAE introduce: A" << endl; cout << "Para ver el porcentaje de votos de TET introduce: D" << endl; cout << "Para ver el porcentaje de votos de SAZ introduce: B" << endl; cout << "Para ver el porcentaje de votos de DIP introduce: C" << endl; cin >> A; cin >> B; cin >> C; cin >> D; cout << endl; if (xA) { cout << "50% de los votos a favor de PAE!" << endl; } if (B) { cout << "40% de los votos a favor de SAZ!" << endl; } if (C) { cout << "30% de los votos a favor de SAZ!" << endl; } if (D) { cout << "20% de los votos a favor de SAZ!" << endl; } cin.get();cin.get(); } Ahora les va otro ejercicio.....!!!! Imprime en pantalla todos los números impares de tres sifras desde el 100 hasta el 500. Este es mi codigo: #include <iostream> using namespace std; int main() { int principio, final; principio = 100; final = 300; for(int i=principio; i < final; i++) { if(i%2==1) cout<<i<<endl; } cin.get();cin.get(); } Si lo pueden mejorar seria exelente
|
|
|
|
« Última modificación: 18 Marzo 2011, 16:43 por Eckonet »
|
En línea
|
#include <iostream> using namespace std;
int main() { cout << "Hello world!" << endl; cin.get(); cin.get(); }
|
|
|
|
|
RyogiShiki
Desconectado
Mensajes: 707
げんしけん - Hikkikomori FTW!!!
|
#include <stdio.h> int main() { int li = 100, ls = 500; for( int i = li; i < ls + li%2; i += 2){ printf("%d\t", i + (i+1)%2); } printf("\n\nPresione ENTER para salir . . ."); getchar(); return 0; } Te das cuenta que haces cosas innecesarias en el código, que lo vuelven poco entendible confuso y algo dificil de leer, por ejemplo esta linea: for( int i = li; i < ls + li%2; i += 2) Para que haces ls + li % 2 cuando li % 2 siempre va a ser igual a 0, entonces seria como ls + 0 osea, es completamente innecesario.. for( int i = li; i < ls; i += 2) Esta ya es una line más entendible! Y ahora en esta linea: printf("%d\t", i + (i+1)%2);en este caso y en tu código (i + 1)%2 siempre va a ser igual a 1, basta con colocar simplemente: printf("%d\t", i + 1);para obtener el resultado. Te sugiero que no te compliques la vida haciendo tantas cosas (por demás innecesarias) el código simple, legible y facil de entender siempre será el más elegante. Saludos
|
|
|
|
« Última modificación: 20 Mayo 2011, 16:00 por gankutsuo »
|
En línea
|
|
|
|
Lx
Desconectado
Mensajes: 12
|
 Lo que hice funciona para cualquier li (límite inferior) y ls (límite superior), no te límites al rango ya dado, siempre se debe hacer algo GENERAL. Nos vemos.
|
|
|
|
|
En línea
|
|
|
|
RyogiShiki
Desconectado
Mensajes: 707
げんしけん - Hikkikomori FTW!!!
|
Eso no tiene nada que ver! tu código está hecho para 100 y 500 y mostrara los impares en esos rangos, pero como ves, las operaciones que exponga arriba también son generales y es cierto en todo momento, lo que quiere decir que si cambias los rangos igual tendrás los números impares en los valores que sean asignados a las variables sin importar si se hace con tú código o can las correcciones que expongo. QUE quede claro que las expongo para hacer más claro el código, si ves el tuyo hace operaciones innecesarias que consumen memoria, pero en la práctica entre tú código y las correcciones es básicamente lo mismo (mismos resultados independientes del rango: mostrar impares entre dos límites), tal vez en lo que gana tu code es en el funcionamiento de limites impares, lo cual es bueno.
Saludos
|
|
|
|
« Última modificación: 20 Mayo 2011, 18:33 por gankutsuo »
|
En línea
|
|
|
|
|
ghastlyX
|
Sin entrar en temas de si es mejor hacer de una forma u otra lo que comentáis, a modo de apunte comento una mejora que puede hacerse respecto al código original que son los módulos. Realizar la operación módulo es costoso, mucho más que una suma o una resta. Una técnica estándar para optimizar el código cuando se hacen módulos por potencias de dos es sustituir los módulos por ANDs bit a bit. Puede parecer una tontería, pero puede mejorar mucho el tiempo de ejecución de un programa. La norma general sería convertir esto: a%pot en esto otro: a&(pot - 1)
|
|
|
|
|
En línea
|
|
|
|
civans89
Desconectado
Mensajes: 2
|
Hola amigos. quisiera saber paginas para aprender a programar desde el inicio. desde pseudocodigo hasta c++
|
|
|
|
|
En línea
|
|
|
|
|
| Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Ejercicios básicos C#
« 1 2 »
.NET
|
~~
|
22
|
98,233
|
3 Diciembre 2011, 04:31
por wilman1010
|
|
|
ejercicios basicos C#
.NET
|
Choclito
|
2
|
10,160
|
30 Enero 2009, 23:53
por aydemy
|
|
|
Ejercicios Basicos en C#
Ejercicios
|
Choclito
|
1
|
25,634
|
21 Abril 2012, 18:08
por Luciitafloze
|
|
|
Ejercicios Básicos
« 1 2 »
Ejercicios
|
Myth.ck
|
16
|
6,796
|
28 Mayo 2009, 09:27
por Eliptico
|
|
|
ejercicios basicos .net
.NET
|
leliCabello
|
12
|
4,672
|
24 Marzo 2010, 23:14
por Shell Root
|
|