ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Proyecto: juego de euclides


Enviado por   •  13 de Noviembre de 2023  •  Prácticas o problemas  •  3.341 Palabras (14 Páginas)  •  17 Visitas

Página 1 de 14

República Bolivariana de Venezuela

Ministerio del Poder Popular para la Educación

Universidad Nacional Experimental de Guayana

Vicerrectorado Académico

Proyecto de Carrera: Ingeniería Informática

Cátedra: Técnicas de Programación II

Sección: 01

PROYECTO: JUEGO DE EUCLIDES

Docente:                                                                                                                     Alumnos:

José Luis Salazar                                                               Cárdenas, Marco (C.I: 28.475.500)

                                                                                         Williams, Alberto (C.I: 28.611.716)

Puerto Ordaz, 23 de septiembre de 2022

MANUAL DEL PROGRAMADOR

  • Requerimientos Técnicos:

  1. Versión del Dev-C++ 6.3 o superior ya instalada.
  2. Versión del C++ 201402 o superior ya instalada.
  3. Laptop, PC o teléfono móvil con al menos 13kb de almacenamiento disponible.

  • Diagrama de Flujo General:
  • Definición y descripción de principales variables y estructuras de datos usadas en el programa (Diccionario de Datos)

#include <iostream> == Librería estándar

#include <cstdlib> == Librería que habilitar los system “pauses” y “cls”.

#include <random> == Para habilitar los set_sequence, la distribución de enteros uniforme y el random device.

#include <utility> == Habilita la función std::swap para el cambio de nombres dentro del juego.

#include <limits> == Mantener los límites max y min para los estándares definidos de la tabla.

#include <string> == Librería para mejorar el manejo de cadenas en el programa.

std::seed_seq ss { rd(), rd(), rd(), rd(), rd(), rd(), rd(), rd() }; == Dadas 8 semillas o una setsequence de 8 bytes, para tener una randomización más alta, que se pasa al std::mt19937

std::uniform_int_distribution<> RandomN_IO { __$min$, __$max$ }; == Muestra los máximos y mínimos de la función random

const int sizeTabla{8}; Mantiene el valor estático de la tabla utilizada para la generación de tablas.

const int matrizSize{ sizeTabla * 4 }; Mismo funcionamiento que la función previa.

int itA{1}, itB{1}; == Iteradores que iteran dentro de los índices de las matrices A y B para guardar los valores tanto de las casillas blancas como de las azules.

static bool cargarJuego{ false } == Hace que el juego aún no se cargue.

ReinicioInput{ false }; == Permite saber cuándo terminó el juego sin cerrar el programa.

std::string Jugador1{}, Jugador2{}; == Nombres de los jugadores, como variable global.

const int longitudNombres{15} == Mantiene el tamaño ideal de la longitud de los nombres.

int Temporal[matrizSize * 2]{}, iTemp {1}; == Nos permite guardar en una función todos los valores mayores que 0 y menores que 100, para validar los valores de las restas de cualquier número del juego.

A[timeA] y B[timeB] == Iteradores de las matrices A y B para las casillas blancas y azules. Una vez agarradas las azules se agarran las blancas. Si tiene el valor -1234 genera la X como un error de número en la casilla.

A[i] = 0; B[i] = 0; == Reinicio de las variables al momento de cargar el juego.

Temporal[0] = A[0];

Temporal[1] = B[0]; == Principales valores randomizados de la función mostradas en el tablero.

counter{0}; == Se va contando con los valores corregidos, y es una variable temporal de control para verificar si cada número ingresado es positivo y único dentro de la tabla, y escalar a otro espacio.

std::getline(cin >> std::ws, Jugador1); == Funcion utilizada para no sobrecargar el buffer de la función, para todo tipo de variable.

int point1{matrizSize}, point2{matrizSize}; == Contador de puntaje de cada matriz, para luego compararlos al final del código y determinar un ganador o un empate, quitando “un corazón” a cada jugador de vida.

  • Definición y Descripción de principales funciones del programa (Diccionario de Funciones)

  1. Función ErrorHandling:

void Error_Handling()

{

if(std::cin.fail())

        {

std::cin.clear();

std::cin.ignore(std::numeric_limits<std::streamsize>::max(), ‘\n’);

        }

}

Función cuya finalidad radica en que si el usuario al ingresar la entrada en el Juego de Euclides, si escribe un dato de tipo no numérico o realiza un salto de línea, evita que el juego se reviente o se crashee y permita la entrada de un tipo numérico.

  1. Función RandomN:

int RandomN(int __$min$, int __$max$) {

std::random_device rd;

std::seed_seq ss { rd(), rd(), rd(), rd(), rd(), rd(), rd(), rd() };

std::mt19937 mt { ss };

std::uniform_int_distribution<> RandomN_IO { __$min$, __$max$ };

return RandomN_IO(mt);

}

Como su nombre lo indica, es una función para seleccionar de forma aleatoria los primeros 2 números enteros positivos que aparecerán en el tablero del juego al principio del mismo.

  1. Función MostrarNombres:

void MostrarNombres()

{

if((RandomN(1, 9) % 3 == 0) && nombresCambio)

...

Descargar como (para miembros actualizados)  txt (13.2 Kb)   pdf (95.8 Kb)   docx (199.9 Kb)  
Leer 13 páginas más »
Disponible sólo en Clubensayos.com