jueves, 13 de octubre de 2016

PRÁCTICA 2, PROBLEMAS SECUENCIALES:

¿Qué hacen las 3 lineas siguientes?
#define maxfil 25 ---- esta linea define un número máximo de 25 filas.
#define maxcol 80 ---- esta linea define un número máximo de 80 columnas.
#define maxcolor 16 ---- esta linea define un número máximo de 16 colores distintos a elegir.

¿Qué significa esta sentencia?
srand(time(NULL)); ---- sirve para generar una semilla de números aleatorios y escoger entre uno de ellos. Cambia cada vez que se cierra el programa.

¿De que tipo son las variables y porque se han puesto esos tipos? ¿Es correcto?
char resp; ---- “char” establece una variable de tipo carácter (en este caso la respuesta a la pregunta).
int fila,columna; ---- “int” establece una variable de tipo entera (filas y columnas).
int color; ---- aquí actúa como variable entera ya que el color se especificará mediante una cifra (entre 16 como se estableció anteriormente).



¿Qué significa esta sentencia?
clrscr(); ---- con esta sentencia borraremos la pantalla de todo lo escrito o dibujado anteriormente.

¿Cual sera el valor de la variable color?
color = rand()%maxcolor; ---- el valor de la variable color queda establecido como aleatorio.
textcolor(color);

¿Cuál será el valor de la variable fila? ¿Es correcto?
fila=rand()%maxfil; ---- El valor de la variable fila sera aleatorio entre los valores fijados. No es correcto en caso de que queramos situar un texto en una fila concreta (no aleatoria).

¿Cuál será el valor de la variable columna? ¿Es correcto?
columna=rand()%maxcol; ---- El valor de la variable columna sera aleatorio entre los valores fijados. No es correcto en caso de que queramos situar un texto en una columna concreta (no aleatoria).

¿Qué significa esta sentencia?
gotoxy(columna,fila); ---- significa ir a las coordenadas marcadas (go to x, y), se suele usar para poner un texto en cierta parte de la pantalla.

¿Qué significa esta sentencia?
printf("%c",char(219)); ---- sirve para pintar bloques en la pantalla, si se añaden comandos como "gotoxy(x,y)" podremos especificar su posición.

¿Qué significa esta sentencia?
Beep(1000,200); ---- con este comando podremos hacer sonar el altavoz interno del PC al efectuar otra acción indicada (como en la práctica de los dibujos de bloques, el pitido sonaba cuando aparecían los bloques).

¿Qué significa esta sentencia?

Sleep(1000); ---- hace que el programa se detenga tantos milisegundos como especifiquemos entre paréntesis.

El código fuente del programa es el siguiente:

#include <iostream>
#include <conio2.h>
#include <windows.h>
#include <stdlib.h>
#include <stdio.h>

using namespace std;

#define maxfil 25
#define maxcol 80
#define maxcolor 16

int main() {
srand(time(NULL));
char resp;
int fila,columna;
int color;

cout<<"Desea ejecutar el programa s/n:";
cin>>resp;


color = rand()%maxcolor;
textcolor(color);
fila=rand()%maxfil;
columna=rand()%maxcol;

gotoxy(1,1);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);


gotoxy(80,1);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);


gotoxy(1,25);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);

gotoxy(80,25);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);

clrscr();

gotoxy(40,12);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);

clrscr();

gotoxy(1,12);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);

clrscr();

gotoxy(8,12);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);
clrscr();

gotoxy(16,12);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);
clrscr();

gotoxy(24,12);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);
clrscr();
gotoxy(32,12);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);
clrscr();
gotoxy(40,12);
printf("%c",char(219));
Beep(1000,200);
Sleep(1000);

textcolor(WHITE);
clrscr();
system("PAUSE");

return 0;
}//fin del programa principal

No hay comentarios:

Publicar un comentario