Anda di halaman 1dari 15

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD

ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA


Curso 301304 – INTRODUCCIÓN A LA PROGRAMACIÓN
Ejercicio 1:

 Problema: Hallar el área de un trapecio, teniendo en cuenta la siguiente información, su base


mayor mide 10 cm, su base menor mide 4 cm y tiene una altura de 5 cm .
 Análisis:
 Datos de entrada: valor de la base mayor del trapecio (baseMayor), valor de base menor del
trapecio (baseMenor), valor de la altura del trapecio (altura).
 Datos de proceso: para calcular el área de un trapecio (área) se aplica la fórmula ((B + b) x h) /
2
 Datos de salida: área del trapecio (área)
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD
ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA
Curso 301304 – INTRODUCCIÓN A LA PROGRAMACIÓN

 Procesos necesarios:
 Almacenar en 3 variables (baseMayor, baseMenor y altura) los valores de base mayor,
base menor y altura.
 Aplicar la fórmula para calcular el área del trapecio y almacenar el resultado en una
variable (area)
 Imprimir el resultado con un mensaje indicando el valor del área del trapecio.

 Diseño de solución: se puede realizar mediante diagrama de flujo ó pseudocódigo (para el caso se
realizará de las 2 formas)
 Diagrama de flujo

inicio

baseMayor, baseMenor, altura

area = ( (baseMayor + baseMenor) * altura ) / 2

area

fin

 Pseudocódigo

Programa: Área trapecio

INICIO
LEER baseMayor
LEER baseMenor
LEER altura
CALCULAR area = ( (baseMayor + baseMenor) * altura ) / 2
IMPRIMIR área
FIN
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD
ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA
Curso 301304 – INTRODUCCIÓN A LA PROGRAMACIÓN

 Prueba de escritorio

Ejecución baseMayor baseMenor Altura area Pantalla


1 10 6 3 24 24
2 5 3 3 12 12

 Codificación en lenguaje C++ (IDE FALCON)

//Autor: Mirian Benavides - UNAD


#include<iostream>//Biblioteca estándar de entrada y salida, para utilizar cout y cin
#include<stdlib.h>/*Biblioteca para utilizar system("cls") limpieza de pantalla y system("pause")
que detiene la ejecución del programa hasta que el usuario digite una tecla */
usingnamespacestd; /*Indica al compilador que utilizará el espacio de nombres estandar para no
incluirlos cada vez que se utilice cout y cin */
intmain() //función principal
{ intarea, baseMayor, baseMenor, altura; //Declaración de variables
cout<<"CALCULO DEL AREA DE UN TRAPECIO"<<endl<<endl; //Imprimir texto y hacer 2
saltos de línea
cout<<"Digite el valor de la Base Mayor : "; //Imprimir mensaje
cin>>baseMayor; //Almacenar valor en variable
cout<<endl<<"Digite el valor de la Base Menor : "; //Hacer un salto de línea y escribir
mensaje
cin>>baseMenor; //Almacenar valor en variable
cout<<endl<<"Digite el valor de la altura : "; //Hacer un salto de línea y escribir mensaje
cin>>altura; //Almacenar valor en variable
area = ((baseMayor+baseMenor) * altura)/2; //Realizar el cálculo del area
cout<<endl<<endl; //Hacer 2 saltos de línea
system("pause"); //Detiene la ejecución del programa hasta que el usuario digite una tecla
system("cls"); //Realiza limpieza de pantalla
cout<<"RESULTADO DEL AREA DE UN TRAPECIO"<<endl<<endl; //Imprimir texto y hacer 2
saltos de línea
cout<<area<<endl<<endl; //Imprimir el contenido de una variable y hacer 2 saltos de linea
system("pause"); //Detiene la ejecución del programa hasta que el usuario digite una tecla
return 0;
}

Error al compilar el codigo fuente del ejercicio 1


UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD
ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA
Curso 301304 – INTRODUCCIÓN A LA PROGRAMACIÓN

Modificado se genero un codigo mas sensillo

#include <stdio.h>

int main ()
{
float bmy, bmn, h, area;

printf ("\nIntroduce la base mayor: ");


scanf ("%f", &bmy);

printf ("\nIntroduce labase menor: ");


scanf ("%f", &bmn);

printf ("\nIntroduce la altura: ");


scanf ("%f", &h);

printf ("\el area es: %f", ((bmy+bmn)*h)/2);

return 1;
}

Evidencia
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD
ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA
Curso 301304 – INTRODUCCIÓN A LA PROGRAMACIÓN

Ejercicio 2:

 Problema: Calcular la nota definitiva de cada uno de 3 estudiantes, teniendo en cuenta que a cada
estudiante se le asignaron 4 notas.

 Análisis:
 Datos de entrada: notas de cada estudiante (nota)
 Datos de proceso: para calcular promedio se requiere sumar las 4 notas utilizando un
acumulador acumNotas = acumNotas + nota y calcular el promedio con promedio =
acumNotas / 4 (el promedio se realiza para cada uno de los 3 estudiantes)
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD
ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA
Curso 301304 – INTRODUCCIÓN A LA PROGRAMACIÓN

 Datos de salida: promedio estudiante 1 (promE1), promedio estudiante 2 (promE2), promedio


estudiante 3 (promE3)
 Procesos necesarios:
 Almacenar en nota el valor de cada una de las notas
 Calcular la suma de notas de cada estudiante y almacenarlo en acumNotas
 Calcular el promedio de notas por cada estudiante
 Imprimir la nota promedio de cada estudiante promE1, promE2, promE3

 Diseño de solución: se puede realizar mediante diagrama de flujo ó pseudocódigo (para el caso se
realizará de las 2 formas)
 Diagrama de flujo inicio

numEst=1; numEst<=3; numEst++

acumNotas = 0

numNota=1; numNota<=4; numNota++

nota

acumNotas = acumNotas + nota

numEst = 1 promE1 = acumNotas /4

numEst = 2 promE2 = acumNotas /4

promE3 = acumNotas /4

promE1, promE2, promE3


UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD
ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA
Curso 301304 – INTRODUCCIÓN A LA PROGRAMACIÓN
fin
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD
ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA
Curso 301304 – INTRODUCCIÓN A LA PROGRAMACIÓN

 Pseudocódigo

Programa: Promedio notas


INICIO
PARA numEst = 1 hasta numEst<=3 hacer numEst++
INICIALIZAR acumNotas = 0
PARA numNota=1 hasta numNota<=4 hacer numNota++
LEER nota;
CALCULAR acumNotas = acumNotas + nota
FIN PARA
SI (numEst = 1) ENTONCES promE1 = acumNotas / 4
SI NO
SI (numEst = 2) ENTONCES promE2 = acumNotas / 4
SI NO promE3 = acumNotas / 4
FIN SI
FIN SI
FIN PARA
ESCRIBIR promE1
ESCRIBIR promE2
ESCRIBIR promE3
FIN

 Prueba de escritorio

Iteración Iteración ciclo


numEst acumNotas numNota nota promE1 promE2 promE3 Pantalla
Ciclo numEst numNota
1 1 0
2.5 1 1 2.5
5.5 2 2 3
10.5 3 3 5
15.5 4 4 5 3.875
2 2 0
3 1 1 3
6 2 2 3
9 3 3 3
12 4 4 3 3
3 3 0
4.2 1 1 4.2
7.2 2 2 3
9.9 3 3 2.7
14.9 4 4 5 3.725
3.875
3
3.725
 Codificación en lenguaje C++ (IDE FALCON)

//Autor: Mirian Benavides - UNAD


#include<iostream>//Biblioteca estándar de entrada y salida, para utilizar cout y cin
#include<stdlib.h>/*Biblioteca para utilizar system("cls") limpieza de pantalla y
system("pause") que detiene la ejecución del programa hasta que el usuario digite una tecla
*/ usingnamespacestd; /*Indica al compilador que utilizará el espacio de nombres estandar
para no incluirlos cada vez que se utilice cout y cin */
intmain() //Función principal
{ float nota, acumNotas, promE1, promE2, promE3;
intnumEst, numNota;
cout<<" PROMEDIO DE NOTAS"<<endl<<endl;
for (numEst=1; numEst<=3; numEst++)
{ acumNotas = 0;
for (numNota=1; numNota<=4; numNota++)
{ cout<<endl<<"Digite Nota "<<numNota<<" del estudiante "<<numEst<<": ";
cin>>nota;
acumNotas=acumNotas+
nota;
}
if(numEst==1) promE1=acumNotas/4;
else if(numEst==2) promE2=acumNotas/4;
else
promE3=acumNotas/4;
}
system("pause"); //Detiene la ejecución del programa hasta que el usuario digite una
tecla system("cls"); //Realiza limpieza de pantalla
cout<<" RESULTADOS PROMEDIO
NOTAS"<<endl<<endl;
cout<<"Estudiante 1 :
"<<promE1<<endl;
cout<<"Estudiante 2 :
"<<promE2<<endl;
cout<<"Estudiante 3 :
"<<promE3<<endl;
system("pause"); //Detiene la ejecución del programa hasta que el usuario digite una
tecla return 0;
}

evidencia
Codigo modificado y mejorado para un mayor número de estudiantes

#include <stdio.h>

float promedio(int valores[], int cantidad) {


int i;
float suma = 0.0;

for (i = 0; i < cantidad; ++i)


suma += valores[i];

return suma / (float) cantidad;


}

int main() {

int notas[10];
char nombre[20];
char opcion[3];
int n, i;

do {
printf("Ingrese nombre del alumno: ");
scanf("%s", nombre);

printf("Cuantas notas tiene %s? ", nombre);


scanf("%d", &n);
for (i = 0; i < n; ++i) {
printf(" Nota %d: ", i + 1);
scanf("%d", &notas[i]);
}

printf("El promedio de %s es %.1f\n", nombre, promedio(notas, n));

printf("Desea calcular mas promedios (si/no)? ");


scanf("%s", opcion);

} while (opcion[0] == 's' || opcion[0] == 'S');

return 0;
}

evidencia

5. A continuación encontrará 5 problemas, cada estudiante debe elegir uno de ellos y desarrollar:
análisis,
diseño de solución (diagrama de flujo y pseudocódigo), prueba de escritorio y codificación en
lenguaje
C++ (IDE FALCON).
B. Solicitar 2 números al usuario, e imprimir el resultado de la suma, resta, multiplicación y
división.
Tener en cuenta que es un error la división entre 0.

Codigo fuente

#include <stdio.h>

int main ()
{
float x, y;

printf ("\nIntroduce el primer numero: ");


scanf ("%f", &x);

printf ("\nIntroduce el segundo numero: ");


scanf ("%f", &y);

printf ("\nLa suma es: %f", x+y);


printf ("\nLa resta es: %f", x-y);
printf ("\nLa multiplicacion es: %f", x*y);
printf ("\nLa division es: %f", x/y);

return 1;
}

Evidencia

Anda mungkin juga menyukai