Programa en C para manejo de puntos en R2
Enviado por TheTortillas • 12 de Mayo de 2021 • Tareas • 1.652 Palabras (7 Páginas) • 47 Visitas
//Programa desarrollado por Sebastian Morales Palacios
//Grupo 1CV13
#include <stdio.h>
#include <math.h>
#include <locale.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
struct Distancias{
double X1, Y1, X2, Y2;
double tam;
}DISTA[100][100];
struct punto{
int ID;
double X;
double Y;
double modulo;
double angulo;
}coordenada[100];
int acum=0;
char PuntoX[100], PuntoY[100], identificador[100];
FILE * fp;
void Imprimir();
void Modulo();
void Angulo();
void DistanciaEntrePuntos();
void SumaDosPuntos();
void RestaDosPuntos();
void MultiplicacionDosPuntos();
void DivisionDosPuntos();
void Compendio();
void DistanciaMaxMin();
void DistanciaEntreDosPuntos();
int main(){
srand(time(NULL));
setlocale(LC_CTYPE, "Spanish");
int n, opc, opc1, detalles, detalles2, puntito, pmaxX, pminX, pmaxY, pminY, i, j;
int x;
double max, min, x1, y1, x2, y2, a1, b1, a2, b2;
FILE *archivo;
printf("\n\n ****Bienvenido a la Calculadora de puntos en R2****\n\n");
printf(" - Ingrese la cantidad de puntos a manejar: ");
scanf(" %d", &n);
printf("\n ¿De que forma desea llenar los puntos?:\n");
printf(" 1. Manualmente.\n");
printf(" 2. Pseudoaleatoria(Generado por Computadora).\n");
printf(" 3. Leer un documento de texto.\n");
scanf(" %d", &opc1);
switch (opc1) {
case 1:
for(x=0; x<n; x++){
acum++;
coordenada[x].ID = acum;
printf("\n");
printf("\n");
printf("****PUNTO [%d]****",x);
fflush(stdin);
printf("\n- Valor de X: ");
scanf("%lf", &coordenada[x].X);
fflush(stdin);
printf("- Valor de Y: ");
scanf("%lf", &coordenada[x].Y);
printf("\n");
}
system("cls");
Imprimir();
Modulo();
Angulo();
DistanciaEntrePuntos();
Compendio();
printf("\n\n¡Puntos leídos correctamente!\nPresione cuakquier tecla para avamzar al menú\n");
system("pause");
system("cls");
break;
case 2:
for(x=0; x<n; x++){
acum++;
fflush(stdin);
coordenada[x].X = rand () % (-200-200+1) - 200;
fflush(stdin);
coordenada[x].Y = rand () % (-200-200+1) - 200;
}
system("cls");
Imprimir();
Modulo();
Angulo();
DistanciaEntrePuntos();
Compendio();
printf("\n\n¡Puntos generados correctamente!\n Presione cualquier tecla para avamzar al menú\n");
system("pause");
system("cls");
break;
case 3:
fp = fopen("PUNTOS.txt", "r");
fclose(fp);
system("cls");
Imprimir();
Modulo();
Angulo();
...