Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Practica No 2 MEC-230 Ing. Tulio German Mamani Mita FACULTAD DE INGENIERIA INGENIERIA MECATRONICA METODOS NUMERICOS Y ALGORITMOS II 1er PARCIAL PRACTICA No 2 Ing. Tulio Mamani PRACTICA No 2 Para todos los ejercicios mostrar el algoritmo, Pseudocodigo y el diagrama de flujo. 1.1 MANEJO BASICO DE OPERADORES 1.1.1 Escribir un programa en C++ que realice: a) Usando printf Imprima: Solucion //1.1 MANEJO BASICO DE OPERADORES Escribir un programa en C++ que realice:// #include <stdio.h> int main(){ printf("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n"); printf("\t \t ****Bienvenidos a MEC 230!!!!**** \n"); printf("\t \t ***Ingenieria Mecatronica*** \n"); printf("\t \t *\"FACULTAD DE INGENIERIA\"* \n"); printf("\t \t \t *\\\\\\ I-2020\\\\\* \n"); printf("Nombre: \t Galo \t \t Joel \n"); printf("Apellido: \t Quisbert \t Huanca \n"); printf("\t \t LA PAZ - BOLIVIA \n"); printf("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \n"); return 0; } b) Realice el mismo ejercicio usando cout Solucion /* MANEJO BASICO DE OPERADORES Realice el mismo ejercicio usando cout(mas facil)*/ #include<iostream> #include<stdio.h> using namespace std; int main(){ cout<<"\t \t*********Bienvenidos a MEC 230!!!!*********"<<endl; cout<<"\t \t*********Ingenieria Mecatronica*********"<<endl; cout<<"\t \t*********\"FACULTAD DE INGENIERIA\"* *********"<<endl; cout<<"\t \t **********\\\\\\ I-2020\\\\\**********"<<endl; cout<<"\t \tNombre: \t Galo \t \t Joel "<<endl; cout<<"\t \tApellido: \t Quisbert \t Huanca "<<endl; cout<<"\t \t \t LA PAZ - BOLIVIA "<<endl; return 0; } 1.1.2 Inversion de Digitos Esccribir un programa que invierta los dígitos de un numero entero (p.e. el numero 78941 debe ser invertido como 14987. Solucion //Invertir numeros// #include<iostream> using namespace std; int main(){ int num,rest,inv=0; cout<<"*****Bienvenido a la app para invertir numeros*****"<<endl; cout<<"Por favor ingrese los digitos a invertir:"<<endl; cin>>num; while(num>0){ rest=num%10; num=num/10; inv=inv*10+rest; } cout<<"El numero invertido es:"<<inv<<endl; cout<<"Gracias por usar la app"<<endl; return 0; } 1.2 UTILIZACION DE IF E IF-ELSE 1.2.1 Escriba un programa que lea las coordenadas enteras (x,y) de un punto y devuelva el cuadrante en el que el punto se encuentra. Solucion #include<iostream> using namespace std; float a,b; int main (){ cout<<"*****Bienvenido a la app para rastrear el cuadrante de una coordenada*****"<<endl; cout<<"Por favor ingrese las coordenadas (nota: valido solo para cordenas del tipo (x,y)):"<<endl; cout<<" ingresar valor para x :"<<endl; cin>>a; cout<<" ingresar valor para y :"<<endl; cin>>b; if ((a>0)&&(b>0)){ cout<<"La coordenada esta en el primer cuadrante"<<endl; cout<<"Espero haya sido util la informacion"<<endl; } else { if ((a<0)&&(b<0)){ cout<<"La coordenada esta en el tercer cuadrante"<<endl; cout<<"Espero haya sido util la informacion"<<endl; } else { if ((a>0)&&(b<0)){ cout<<"La coordenada esta en el cuarto cuadrante"<<endl; cout<<"Espero haya sido util la informacion"<<endl; } else { if ((a<0)&&(b>0)){ cout<<"La coordenada esta en el segundo cuadrante"<<endl; cout<<"Espero haya sido util la informacion"<<endl; } } } } return 0; } 1.2.2 Escriba un programa que lea la nota “N” de un alumno (Se debe validar que la nota sea de 0 a 100) y que según el valore indique a) Si N <=25 : se debe imprimir: DESEMPEÑO PESIMO (REPROBADO) b) Si N >26 y N<=50: se debe imprimir: DESEMPEÑO REGULAR (REPROBADO) c) Si N >51 y N<=75: se debe imprimir: DESEMPEÑO BUENO (APROBADO) d) Si N >76 y N<=100: se debe imprimir: DESEMPEÑO EXELENTE (APROBADO) Utilice IF ELSE para el algoritmo Solucion #include<iostream> using namespace std; float a,b; int main (){ cout<<"*****Bienvenido a la app para dar la nota del estudiante *****"<<endl; cout<<"Por favor ingrese los datos del estudiante"<<endl; cout<<" Numero del registro universitario del estudiante :"<<endl; cin>>a; cout<<" ingresar la nota del estudiante :"<<endl; cin>>b; if ((b>=0)&&(b<25)){ cout<<"La nota del estudiante con R.U.:"<< a <<"es:"<<endl; cout<<"EL DESEMPEÑO DEL ESTUDIANTE FUE PESIMO (REPROBADO)"<<endl; } else { if ((b>=26)&&(b<50)){ cout<<"La nota del estudiante con R.U.:"<< a <<"es:"<<endl; cout<<"EL DESEMPEÑO DEL ESTUDIANTE FUE REGULAR (REPROBADO)"<<endl; } else { if ((b>=51)&&(b<75)){ cout<<"La nota del estudiante con R.U.:"<< a <<"es:"<<endl; cout<<"EL DESEMPEÑO DEL ESTUDIANTE FUE BUENO (APROBADO)"<<endl; } else { if ((b>=76)&&(b<=100)){ cout<<"La nota del estudiante con R.U.:"<< a <<"es:"<<endl; cout<<"EL DESEMPEÑO DEL ESTUDIANTE FUE EXELENTE (APROBADO)"<<endl; } } } } return 0; } 1.2.3 Escribir un programa que lea los 3 angulos de un triangulo (A,B,C) y responda con el tipo de traingulo que es: El programa debe validar que la suma de todos los angulos sea igual a 180 grados de lo contrario arrojara error y se termina el programa. a) Si tiene un angulo obtuso es obtusángulo mayor a 90 b) Si tiene un angulo recto es REctangulo un angulo de 90 c) Si tiene 3 angulos agudos es acutángulo tres angulos agudos AL mismo tiempo debe indicar d) Si tiene 3 angulos diferentes es Escaleno e) Si tiene 2 angulos iguales es Isosceles f) SI tiene 3 angulos iguales es Equilatero (p.e. si A=60, B=60 y C= 60 Es Equilátero Acutangulo Solucion #include<stdio.h> int main(){ int a,b,c; printf("*****Bienvenido a la app para dar la nota del estudiante *****\n"); printf("Ingresar el valor del primer angulo en DEG\n"); scanf("%d", &a ); printf("Ingresar el valor del segundo angulo en DEG\n"); scanf("%d", &b ); printf("Ingresar el valor del tercer angulo en DEG\n"); scanf("%d", &c ); if ( a==90 && b<90 && c<90||b==90 && a<90 && c<90||c==90 && b<90 && a<90){ printf("el triangulo es rectangulo\n");} if ( a==90 && b==c||b==90 && a==c||c==90 && b==a){ printf("el triangulo es isoceles\n"); if ( a== 90 && b>c||b==0 && a>c||c==0 && a>b ||a== 90 && b<c||b==0 && a<c||c==0 && a<b){ printf("el triangulo es escaleno\n");} } else{ if ( a>90 && b<90 && c<90||b>90 && a<90 && c<90||c>90 && b<90 && a<90){ printf("el triangulo obtusangulo\n");} if ( a>=90 && b==c||b>=90 && a==c||c>=90 && b==a){ printf("el triangulo es isoceles\n");} if ( a==b==c){ printf("el triangulo es equilatero\n");} if ( a>b>c||b<a<c||a>b<c||a<b>c){ printf("el triangulo es escaleno\n");} else{ if ( a<90 && b<90 && c<90){ printf("el triangulo obtusangulo\n");} if ( a>=90 && b==c||b>=90 && a==c||c>=90 && b==a){ printf("el triangulo es isoceles\n");} if ( a==b==c){ printf("el triangulo es equilatero\n");} if ( a>b>c||b<a<c||a>b<c||a<b>c){ printf("el triangulo es escaleno\n"); } } } } 1.3 UTILIZACION DE WHILE Y DO WHILE 1.3.1 Escribir un programa que calcule factorial de un numero leído por teclado “n” Utilice el cilo While para el programa Solucion #include<iostream> #include<stdlib.h> using namespace std; int main(){ int n,factorial=1; cout<<"Nienvenido a la app que te ayudara a sacar el factorial n! "<<endl; cout<<"introduzca un numero: "; cin>>n; for(int i=1;i<=n;i++){ factorial *= i; } cout<<" el factorial de la forma n! es: "<<factorial<<endl; cout<<" Gracias por usar la app "<<endl; return 0; } 1.3.2 Escribir un programa que lea un numero “n” desde teclado y calcule la suma de los primeros “n” números primos P.e. SI se lee n=8 , el programa deberá mostrar: S=1+2+3+5+7+11+13+17= 56 Utilice ciclo While Solucion #include <stdio.h> int main() { int cont=0, num=2, n, sum=0;float prom=0; printf("Bienvenido al programa para hallar la suma de los numeros primos\n"); printf("Ingrese n: "); scanf("%d",&n); printf("\n=> "); while(cont < n){ if((num)){ sum = sum + num +1; cont++; } num++; } printf("\n\nSuma: %d",sum); prom = sum; return 0; } 1.3.3 Escribir un programa que muestre un menú de opciones y pida seleccionar una opcion (del 1 al 5) El programa debe mostrar las opciones qeus e detallan a continuación y en función a la opción elegida debe imprimir “ USTED ELIGIO LA OPCION 1 SUMAR” y luego debe mostrar nuevamente el menú para que se elija una opción nuevamente, si se elije la opción 5 se sale del programa #include <stdio.h> int main() { int n, opcion; printf( "Bienvenido al menu Principal"); do { printf( "\n 1. Sumar.", 163 ); printf( "\n 2. Restar", 163 ); printf( "\n 3. Multiplicar", 163 ); printf( "\n 4. Dividir" ); printf( "\n 5. Salir." ); printf( "\n\n Introduzca opcion (1-5): ", 162 ); scanf( "%d", &opcion ); switch ( opcion ) { case 1: printf( "\n usted eligio sumar \n ", 163 ); break; case 2: printf( "\n usted eligio restar \n", 163 ); break; case 3: printf( "\n usted eligio multiplicar \n ", 163 ); break; case 4: printf( "\n usted eligio dividir \n", 163 ); break; } } while ( opcion != 5 ); return 0; } 1.3.4 Escribir un programa que convierta un numero de base 10 a cualquier base entera menor a 9 (incluyendo decimales) El programa debe pedir la base a la cual se desaa transformar y debe validar que esta abse sea menor o igual a 9. Solucion #include <iostream> using namespace std; int dec2base(int n, int base); int main(void) { int num,base; cout <<"Bienvenido a la app que te ayudara a cambiar la base de 10 de un numero a cualquiera menor a 9"<<endl; cout <<"Introduce un numero entero en base 10: "<<endl; cin >>num;cout <<endl; cout <<"Introduce la base a la que deseas convertir el numero:"<<endl; cin >>base; cout <<endl<<"El numero "<<num<<" en base 10 equivale al numero "<< dec2base(num,base)<<" en base "<<base<<"."<<endl<<endl; system("pause"); } int dec2base(int n, int base) { int n_base=0, coef=1; while (n!=0) { n_base+=coef*(n%base); coef*=10; n/=base; } return 0; } 1.3.5 Escribir un programa que convierta un numero de cualquier base, menor o igual a 9, a base 10 Falta ☹ PAGE 4 2020
Compartir