jueves, 8 de marzo de 2012

Respuesta 1er Reto eyoZ

Que tal, antes que nada una disculpa, sé que dije que publicaría el día de ayer la respuesta de mi primer reto, bien... Se los presento (por cierto nadie lo respondió bien completamente).

La primera parte, se pedía que sin agregar mas líneas al código se colocara una "pausa", en pocas palabras frenar la ejecución del programa para que se viera el resultado cuando se da doble clic sobre el .exe

Se le puede dar solución así:

#include<stdio.h>
#include<stdlib.h> o #include<conio.h>
//aunque getch(); es considerado como un error de programación
 main()
 {
       int a=-1, b=4, R=6141.3;
       R=a+b;
       printf("Suma: %d", R);
       R=a-b;
       printf("\nResta: %d", R);
       system("pause"); o getch();
 }

Se eliminan las líneas  a=(-a*a)/-a; y  b=((b)*(b))/(b*-a); ya que el proceso solo gasta memoria y procesador, ya que a=(-(-1)*-1)/-(-1)= -1, recordar la ley de los signos, la siguiente línea es lo mismo b=((4)*(4))/(4*-(-1))= 4, como dije en líneas anteriores, no hay que agregar mas líneas, así que eliminamos estas por una cabecera y la línea de pausa, también se puede hacer lo siguiente:

#include<stdio.h>
main()
 {
       int a=-1, b=4, R=6141.3;
       char cosa;
       R=a+b;
       printf("Suma: %d", R);
       R=a-b;
       printf("\nResta: %d", R);
       cosa=_getche();
 }

Ahora pasemos a la optimización de código:

#include<stdio.h>

 main()
 {
       int a=-1, b=4;
       printf("Suma: %d", a+b);
       printf("\nResta: %d", a-b);
       _geche(); o getchar();    
 }
 
 Eso es todo, como ven es fácil, pero tenemos que apegarnos a lo básico, pruebas de escritorio, análisis del código, y sobretodo, saber leer y entender las instrucciones.

Sin mas por el momento me despido, solo para recordarles que el viernes por la noche o el sábado publicare mi segundo reto.

"No todo en la vida son bits, aunque aparentemente sea así..."- Orell Owen.

No hay comentarios:

Publicar un comentario