Grupo A

Anuncio
Practica Calificada Grupo A
Programación en C++
Pág. 1
ÍNDICE
ÍNDICE .............................................................................................................................................1
1. INTRODUCCIÓN. ......................................................................................................................1
1.1
Ejercicio 1: Medir Distancias entre Puntos (0.4pts) ......................................................1
1.2
Ejercicio 2: Convertir de C. Rectangulares a Polares y viceversa (0.3pts) ..................2
1.3
Ejercicio 3: Contar vocales repetidas en un texto (0.3pts) ............................................3
1. Introducción.
Para la realización de esta practica, debe verificar que tiene creada la carpeta Abril03 en
el disco G:\. Allí es donde debe dejar todos los ejercicios, cada uno en su respectivo directorio,
es decir el Ejercicio 1 en Abril03\Ejer1 y así sucesivamente. Al finalizar la practica debe
verificar (con el Windows Explorer) que todos los ejercicios se encuentran es esta carpeta.
En los tres ejercicios se da la estructura de main(). Se debe respetar esta estructura y
hacer los ejercicios con las funciones que se ponen (con el mismo nombre). Dentro de las
funciones cada uno puede poner el código que desee y usar la variables que necesite. No debe
usar variables globales.
1.1 Ejercicio 1: Medir Distancias entre Puntos (0.4pts)
El objetivo de este ejercicio
es el de calcular las distancias
entre varios puntos de un
plano cartesiano x e y (dados
por el usuario) y al final
imprimir los dos puntos que
están más cercanos, con la
distancia que les separa.
En la figura adjunta se
pueden observar las entradas
y salidas del programa.
La estructura general
del programa es la siguiente:
#include <iostream.h>
#include <math.h>
float *PedirPuntos(int &);
void DistanciasEntrePuntos(float *,int);
void main()
{
float *v;
int num;
v = PedirPuntos(num);
//aqui crear el vector
DistanciasEntrePuntos(v,num);
delete [] v;
//liberar memoria
}
A continuación se le dará una breve explicación de cada una de las funciones:
•
La función PedirPuntos debe pedir en primer lugar el número de puntos que desea
introducir el usuario, y debe devolver:
Informática II – Fundamentos de Programación - Tecnun
Practica Calificada Grupo A
Programación en C++
Pág. 2
o El vector con los puntos (intercalados, es decir v[i]=x v[i+1]=y)
o El número de puntos que ha introducido el usuario, por medio de la variable
num.
En esta función se debe reservar la memoria para el vector. Nota: al usar un solo vector,
los puntos se deben intercalar, entonces el tamaño del vector será de 2 veces num.
•
La función DistanciasEntrePuntos recibe el vector con los puntos y el número de
puntos introducidos. Esta función es la que se encarga de imprimir en la consola la
distancia que hay entre cada uno de los puntos y de calcular cuales son los puntos que
se encuentran más cercanos, así como su distancia que les separa.
Distancia entre dos puntos:
(x2 − x1)2 + ( y 2 − y1)2
En las funciones puede usar las variables que crea conveniente. No olvide que este ejercicio debe
estar en la carpeta Abril03\Ejer1.
1.2 Ejercicio 2: Convertir de C. Rectangulares a Polares y viceversa
Este ejercicio consiste en hacer un programa
que le permita al usuario hacer conversiones
de coordenadas rectangulares a polares y
viceversa, para lo cual debe hacer un menú
donde el usuario elija la opción deseada (ver
figura). Según la opción que el usuario elija,
debe pedir los datos: x e y o r y el ángulo.
(0.3pts)
Las conversiones se deben realizar por medio
de dos funciones, según vemos a continuación
en la estructura general del programa:
#include <iostream.h>
#include <math.h>
void PolarToCartesianas(float r,
float ang,float &x, float &y);
void CartesianasToPolar(float x,
float y, float &r, float &ang);
void main()
{
//declarar variables
while(true){
//menú
//llamada a CartesianasToPolar(x,y,r,ang); según opcion
//llamada a PolarToCartesianas(r,ang,x,y); según opcion
}
}
En el programa se deben llamar a las funciones según la opción que el usuario ha elegido, es
decir que si ha elegido la opción 1 (como en la figura), pedirá los valores de x e y y llamará a la
función CartesianasToPolar(). Debe observar que cada función recibe dos valores y devuelve
dos, por medio de los argumentos que se le pasan a la función.
Al igual que en el ejercicio 1, no olvide que este ejercicio debe estar en la carpeta Abril03\Ejer2.
Informática II – Fundamentos de Programación - Tecnun
Practica Calificada Grupo A
Programación en C++
Pág. 3
1.3 Ejercicio 3: Contar vocales repetidas en un texto (0.3pts)
Este ejercicio consiste en hacer un programa sencillo que cuente cuantas veces se repiten las
vocales en un texto, el cual es dado por el usuario. Ver figura para entender mejor el
funcionamiento del programa.
La estructura del programa debe ser la siguiente:
#include <iostream.h>
#include <string.h>
char *PideTexto();
void ContarVocales(char *, int []);
void Imprime(int []);
void main()
{
char *texto;
int Num[5];
texto = PideTexto();
ContarVocales(texto,Num);
Imprime(Num);
delete [] texto; //libera memoria
}
La estructura de main debe ser como se muestra más arriba. Existen 3 funciones que realizan el
trabajo, las cuales son llamadas desde main. A continuación se da una explicación de lo que
realiza cada una de ellas:
• La función PideTexto devuelve un puntero a la cadena que el usuario ha escrito.
• La función ContarVocales recibe el array que contiene el texto y otro array de enteros, en
el cual va a devolver cuantas veces se repite cada una de las vocales, es decir, en Num[0]
vendrán las veces que se repite la vocal a (igual a 9 en el ejemplo de la figura), en Num[1]
la vocal e y así sucesivamente.
• La función Imprime recibe el array de enteros e imprime en la consola lo que ha
encontrado, según se puede ver en la figura.
Nota: debe contar las mayúsculas y las minúsculas, como se ve en la figura.
Al igual que en los dos ejercicios anteriores, no olvide que este ejercicio debe estar en la carpeta
Abril03\Ejer3.
Suerte!!
Informática II – Fundamentos de Programación - Tecnun
Descargar