Vous êtes sur la page 1sur 10

Joaquin Cuadra

Curso Algoritmo de Datos


Parcial de Algoritmos

Preg_01.- Escribir un pseudocdigo que permita leer desde el teclado los tres lados de un tringulo,
luego calcular e imprimir el permetro y rea de dicho tringulo siempre y cuando exista el tringulo.
(Aplique la frmula de Hern para el clculo del rea). El programa debe terminar cuando usted
presione la tecla N (Sug. Poner una iteracin que pregunte desea continuar *S/N+?)

Algoritmo programa 1.
Var
float a,b,c,semiperimetro,area;
char opcion='N';
Inicio
HACER MIENTRAS OPCION != N
Leer (a,b,c) // los 03 lados de un cateto
SEMIPERIMETRO =a+b+c/2;
// Semiperimetro
AREA =sqrt((s-a)*(s-b)*(s-c));
IMPRIMIR SEMIPERIMETRO Y AREA
IMPRIMIR << "Desea Salir S/N: ";
LEER OPCION;
FIN HACER MIENTRAS
FIN

PROGRAMA 01
#include<iostream>
#include <iomanip>
#include <cmath>
#include <locale>
using namespace std;
void valida (float z)
{
while (z <= 0 )
{
std::cout << "Error, Entrada Invalida " << std::endl;
std::cout << "Ingrese Un Valor Mayor a CERO: ";
cin>>z;
return;
}
}
void reporte (double x, double y) {
cout << "********************************************************\n";
cout << "
Calculo de Salario y Comisiones
\n";
cout << "*******************************************************\n\n";
cout << "\nEl Valor del Ares es
: " << x << endl;
cout << "\nEl Valor del Perimetro es : " << setprecision(2) << fixed << y*2 << endl;
return;
}
int main()
{
float a,b,c,s,e;

char opcion='N';
while(opcion=='N' )
{
cout<<"Calculo del Area y Perimetro de un Triangulo - frmula de Hern "<<endl;
cout<<"Ingrese el Primer cateto"<<endl;
cin>>a;
valida(a);
cout<<"Ingrese el Segundo cateto"<<endl;
cin>>b;
valida(b);
cout<<"Ingrese el Tercer cateto"<<endl;
cin>>c;
valida(c);
s=a+b+c/2;
// Semiperimetro
e=sqrt((s-a)*(s-b)*(s-c));
reporte(e,s);
std::cout << "Desea Salir S/N: ";
std::cin>>opcion;
opcion = toupper(opcion);
}
}

Preg_02.- Disear un algoritmo que permita calcular la suma de los primeros N trminos de la
Siguiente series:
64/21 + 62/24 + 60/27 + 58/30 + ..........

Algoritmo programa 2.
Var
float a,numerador=66,denominador=18,suma=0;
char opcion='N';
Inicio
HACER MIENTRAS OPCION != N
Leer (a) // Ingresa la cantidad de repericion
DESDE i=0; HASTA i<a INCREMENTAR ++I HACER
numerador=numerador-2;
denominador=denominador+3;
suma = suma + (numerador/denominador);
FIN REETIR
IMPRIMIR SUMA
IMPRIMIR << "Desea Salir S/N: ";
LEER OPCION;
FIN HACER MIENTRAS
FIN

PROGRAMA 02
#include<iostream>
#include <iomanip>
#include <cmath>
#include <locale>
using namespace std;
void valida (float z)
{
while (z <= 0 )
{
std::cout << "Error, Entrada Invalida " << std::endl;
std::cout << "Ingrese Un Valor Mayor a CERO: ";
cin>>z;
return;
}
}
void reporte (double x) {
cout << "********************************************************\n";
cout << "
Totalizadon la Suma
\n";
cout << "*******************************************************\n\n";
cout << "\nEl Valor de la suma es : " << setprecision(2) << fixed << x << endl;
return;
}
int main()
{
float a,numerador=66,denominador=18,suma=0;
char opcion='N';
while(opcion=='N' )
{
cout<<"Calculo de la secuencia de Fracciones "<<endl;
cout<<"Ingrese la cantidad de Repeticion => ";
cin>>a;
valida(a);

for(int i=0;i<a;++i)
{
numerador=numerador-2;
denominador=denominador+3;
suma = suma + (numerador/denominador);
cout<<""<< numerador << "/"<< denominador<< " + "<< endl;
}
reporte(suma);
std::cout << "Desea Salir S/N: ";
std::cin>>opcion;
opcion = toupper(opcion);
}
}

Preg_03.- Escribir un pseudocdigo para imprimir los divisores, la cantidad de divisores y la suma
de dichos divisores de los nmero enteros que se encuentran entre dos valores enteros positivos.
Debe asegurarse que el valor inicial siempre sea menor que el valor final.

Algoritmo programa 3.
VAR
int x, y;
int r, d, contador=0, suma=0, tc=0,ts=0;
d = 1;
INICIO
HACER MIENTRAS OPCION != N
Leer (x,y) // Rango de Divisores inicio y Fin
DESDE i=x; HASTA i<y

INCREMENTAR ++I HACER

HACER MIENTRAS d< i REPETIR


r = I % d;
SI (r == 0){
IMPRIMIR Divisor "<< d <<;
contador++;
suma = suma + d;
d++;
FIN DE HACER MIENTRAS
FIN REETIR
IMPRIMIR Total Divisores
"<< contador
IMPRIMIR Suma de los mismos "<< suma
IMPRIMIR << "Desea Salir S/N: ";
LEER OPCION;
FIN

PROGRAMA 03
#include<iostream>
#include <iomanip>
#include <cmath>
#include <locale>
using namespace std;
void divisores(int num,int y)
{
int r, d, contador=0, suma=0, tc=0,ts=0;
d = 1;
cout<<">>>>>> Los Divisores de <<<<<<<< "<< num <<endl;
while(d <= num)
{
r = num % d;
if(r == 0){
cout<<"Divisor "<< d << endl;
contador++;
suma = suma + d;}
d++;
}
cout<<"Total Divisores
"<< contador << endl;
cout<<"Suma de los mismos "<< suma << endl;
}
int main()
{

int x, y;
cout<<"Ingrese numero
cin>>x;

=>";

cout<<"Ingrese un Segundo numero =>";


cin>>y;
for (int i=x; i<=y; i++)
divisores(i,y);
}

Algoritmo programa 4.
VAR
float a,aumento=0,pre=0,civil=0,total=0;
char b,opcion='N';
INICIO
HACER MIENTRAS OPCION != N
Leer (a,b) // Salario del trabajador y estado Civil
SI (a>6000) {aumento=0;}
SI ((a>3001) || (a<=6000)) {aumento=0.05;}
SI ((a>1501) || (a<=3000)) {aumento=0.10;}
SI ((a>0) || (a<=1500))
{aumento=0.20;}
SI (b=='S') {civil=100;}
SINO civil=150;
pre = a*aumento;
total = a +(pre+civil);
IMPRIMIR
IMPRIMIR
IMPRIMIR
IMPRIMIR

AUMENTO // a
BONO
// civil
TOTAL AUMENTO // pre
TOTAL NUEVO SALARIO // total

IMPRIMIR << "Desea Salir S/N: ";


LEER OPCION;
FIN

Programa 4.
#include<iostream>
#include <iomanip>
#include <cmath>
#include <locale>
using namespace std;
void valida (float z)
{
while (z <= 0 )
{IMPRIMIR TOTAL AUMENTO // pre
std::cout << "Error, Entrada Invalida " << std::endl;
std::cout << "Ingrese Un Valor Mayor a CERO: ";
cin>>z;
return;
}
}
int main()
{
float a,aumento=0,pre=0,civil=0,total=0;
char b,opcion='N';
while(opcion=='N' )
{
cout<<"<<<<<<<<<<<<<
Calculo de incremento de Salario
cout<<"Ingrese el salario del trabajado ";
cin>>a;
valida(a);
cout<<"Ingrese el Estado Civil
cin>>b;
b = toupper(b);
if
if
if
if

>>>>>>>>>>>>>>>>>>

"<<endl;

S/C "<<endl;

(a>6000) {aumento=0;}
((a>3001) || (a<=6000)) {aumento=0.05;}
((a>1501) || (a<=3000)) {aumento=0.10;}
((a>0) || (a<=1500))
{aumento=0.20;}

if (b=='S') {civil=100;}
else civil=150;
pre = a*aumento;
total = a +(pre+civil);
cout <<"El total del Bono es de " << pre << "x Estado civil es de : " << civil
cout <<"Y El Nuevo Salario es de
"<< total << endl;

std::cout << "Desea Salir S/N: ";


std::cin>>opcion;
opcion = toupper(opcion);
}
}

<< endl;

Algoritmo 5.
VAR
int a;
char opcion='N'
INICIO
HACER MIENTRAS OPCION != N
Leer (a) // Longitud de la Varilla
IMPRIMIR
IMPRIMIR
IMPRIMIR

(int)(a/1) << " de un 1 Corte y Desperdicion de "<< a%1 ;


(int)(a/2) << " de un 2 Corte y Desperdicion de "<< a%2 ;
(int)(a/3) << " de un 3 Corte y Desperdicion de "<< a%3 ;

IMPRIMIR << "Desea Salir S/N: ";


LEER OPCION;
FIN

Programa 5.
#include <iostream>
using namespace std;
int main()
{
int a;
char opcion='N';
while(opcion=='N' )
{
cout<<" >>>>>>>
Ingrese La longitud de la Varilla
cin>>a;
cout<<"Maximo numero de Varillas es
"<< a%1 << endl;
cout<<"Maximo numero de Varillas es
"<< a%2 << endl;
cout<<"Maximo numero de Varillas es
"<< a%3 << endl;
std::cout << "Desea Salir S/N: ";
std::cin>>opcion;
opcion = toupper(opcion);
}
}

=>

: ";

"<< (int)(a/1) << " de un 1 Corte y Desperdicion de


"<< (int)(a/2) << " de un 2 Corte y Desperdicion de
"<< (int)(a/3) << " de un 3 Corte y Desperdicion de