Algoritmos y Codigo fuente java,c++

Page 1

Ejercicios Resueltos del libro “ Una amigable Introducción a la Programación con Java, C++ y Visual Basic” de los algoritmos resueltos mediante la representación de seudo código, by Joseph EJERCICIOS PROPUESTOS 01 Escriba un algoritmo para llegar a su salón de clases desde el momento en que Uds. Se levanta de su cama

Veo la hora

Realizo aseo personal Cojo Champú ,Cepillo detal, Crema dental a usar en el Aseo Personal Disponibilidad de Ducha Y agua - Comienzo a ducharme -

Cepillar los dientes Regreso a mi Cuarto Guardo Champú, Cepillo D, Crema D Me cambio de Ropa Lustro mis zapatos Observo el horario de Clases Cojo la mochila Hecho todo lo perteneciente al horario de clases Salgo de casa

Si Hay tiempo -

Tomo colectivo Pago el pasaje

-

Tomo un taxi Pago el pasaje

-

Entro a la Universidad

-

Llego al salón de clases

-

Escojo un carpeta y me siento

Sino


3) Organice las Siguientes instrucciones en forma lógica ara escribir en su cuaderno de Clases a. Escribir b. Coger el lapicero c. Abrir el Cuaderno d. Cerrar el cuaderno e. Dejar el lapicero

Organizando: c-b-a-d-e

4) Escriba un algoritmo que calcule el área y perímetro de un rectángulo, dado la altura y la base

Inicio Variables

Leer H,B Area=B*H Perimetro=2(H+B) Imprimir “Área del rectángulo” Area Imprimir “Perímetro del rectángulo” Perimetro

Fin

5) Escriba un algoritmo que calcule el área y perímetro de un Cilindro, dado la altura y el radio de la base Inicio


Variables

Leer H,R Area= 2 Π R ( H + R ) Perimetro= Imprimir “Área del rectángulo” Area Imprimir “Perímetro del rectángulo” Perimetro

Fin

EJERCICIOS PROPUESTOS 02

1. Un restaurante ofrece un descuento de 5% para consumo de hasta s/.100 y un descuento de 10% para consumo mayor, para ambos casos se aplica un impuesto del 19%. Desarrolle un algoritmo y programación en java,c++ y Visual Basic para determinar el monto del descuento, el impuesto y el importe a pagar.

Inicio Variables: {consumo=0, descuento=0,momto_IGV, precio=0} //Entrada Leer consumo //proceso Si consumo <=100 descuento = 0.05*consumo Sino Si consumo >100 descuento = 0.10*consumo sino Escribir “Error”


Fin de Si monto_IGV=(consumo-descuento)*0.19 precio = consumo-descuento +monto_IGV //salida Escribir precio Fin

C贸digo fuente en vb

Module Module1 Sub Main() Dim consumo, descuento, monto_IGV, precio As Double 'entrada Console.WriteLine("Ingresar precio de Consumo") consumo = Console.ReadLine() 'proceso If consumo <= 100 Then descuento = 0.05 * consumo ElseIf consumo > 100 Then descuento = 0.1 * consumo Else Console.WriteLine("Error") End If monto_IGV = (consumo - descuento) * 0.19 precio = consumo - descuento + monto_IGV 'Salida Console.WriteLine("Importe a pagar = " + Convert.ToString(precio)) Console.Read() End Sub End Module C贸digo Fuente C++

#include <iostream> using namespace std; int main(){ //variables float consumo=0,descuento=0,monto_IGV=0,precio=0; //entrada


cout<<"Ingresar monto de Consumo"<<endl; cin>>consumo; //proceso if (consumo<=100) descuento=0.05*consumo; else if(consumo>100) descuento=0.10*consumo; else cout<<"Error"<<endl; monto_IGV =(consumo-descuento )*0.19; precio=consumo-descuento+ monto_IGV ; //salida wcout<<"Monto a pagar = "<<precio<<endl; system("pause"); return 0; } C贸digo fuente Java

import java.util.Scanner;

/** * * @author Atanacio */ public class Problema1 { public static void main(String[] args) { // TODO code application logic here

//variables float consumo=0,descuento=0,monto_IGV=0,precio=0; //entrada Scanner Entrada= new Scanner(System.in);


System.out.println("Ingresar monto de consumo");

consumo=Entrada.nextFloat();

//proceso if (consumo<=100) descuento=(float) (0.05*consumo); else if(consumo>100) descuento=(float) (0.10*consumo); else System.out.print("error");

monto_IGV =(float) ((consumo-descuento )*0.19); precio=consumo-descuento+ monto_IGV ;

//salida System.out.println("Monto de consumo a pagar = "+precio);

} } 2. Desarrolle un algoritmo y programación en java,c++ y Visual Basic que permita ingresar nota de un alumno de cero a veinte y obtenga el tipo de alumnos según la siguiente tabla. Nota<=10 Nota de 11 a 14 Nota de 15 a 16 Nota de 17 a 18 Nota de 19 a 20

Inicio

Pésimo Regular Bueno Muy bueno Excelente


Variables nota=0 Cd

Cadena

//Entrada Leer: nota //proceso Caso nota Caso 0 a 10 Cd=”Pésimo” Caso 11 a 14 Cd=”Regular” Caso 15 a 16 Cd=”Bueno” Caso 17 a 18 Cd=”Muy Bueno” Caso 19 a 20 Cd=”Excelente” Caso contrario Cd=”Error ” Fin de Caso //Salida Escribir Cd

Fin Codigo Fuente en vb

Module Module1 Sub Main() Dim nota As Integer Dim Cd As String 'entrada


Console.WriteLine("Ingresar nota del alumno") nota = Console.ReadLine() 'proceso Select Case nota Case 0 To 10 Cd = "PĂŠsimo" Case 11 To 14 Cd = "Regular" Case 15 To 16 Cd = "Bueno" Case 17 To 18 Cd = "Muy Bueno" Case 19 To 20 Cd = "Exelente" Case Else Cd = "Error" End Select 'Salida Console.Write(Cd) Console.Read() End Sub End Module Codigo fuente C++ #include <iostream> #include <string> using namespace std;

int main(){ // variables int nota=0; string Cd; //entrada cout<<"Ingresar nota de Alumno"<<endl;cin>>nota; //proceso if(nota>0&&nota<10) Cd="PĂŠsimo"; else if(nota<15 ) Cd="Regular"; else if(nota<17 ) Cd="Bueno"; else if(nota<19 ) Cd="Muy Bueno"; else if(nota<21 )


Cd="Excelente"; else Cd="Error"; //Salida cout<<Cd<<endl; system("pause"); return 0; } C贸digo fuente Java import java.util.Scanner;

/** * * @author Atanacio */ public class Problema2 { public static void main(String[] args) { // TODO code application logic here // variables int nota=0; String Cd;

//entrada Scanner Entrada= new Scanner(System.in); System.out.println("Ingresar nota de Alumno (nota<=20)"); nota=Entrada.nextInt();

//proceso if(nota>0&&nota<10) Cd="P茅simo";


else if(nota<15 ) Cd="Regular";

else if(nota<17 ) Cd="Bueno";

else if(nota<19 ) Cd="Muy Bueno";

else if(nota<21 ) Cd="Excelente"; else Cd="Error";

//Salida System.out.println(Cd); } } 3. Un restaurante tiene dos tipos de clientes A y B recibe dos formas de pago al contado(C) O a plazos (P) Desarrolle un algoritmo y programe en Java,C++ y Visual basic que permita ingresar el monto de la compra y se obtenga el monto de descuento o el Monto del Recargo y el Total a pagar, segĂşn la siguiente tabla. Tipo de Cliente A B

Contado(C)-Con Descuento 20% 15%

Inicio Variables { Tipo_cliente, Frm_pago} Descuento = 0, Pago_total =0 //Entrada Leer Pago,Tipo_cliente,Frm_pago

Caracter

Plazos(P)-Con Recargo 10% 5%


//Proceso

Caso Tipo_cliente Caso A Si Frm_pago==”C” Descuento=Pago*0.20 Sino Si Frm_pago ==”P” Plazos=Pago*0.10 Sino Imprimir “Error” Fin de Si Caso B Si Frm_pago==”C” Descuento=Pago*0.15 Sino Si Frm_pago ==”P” Plazos=Pago*0.05 Sino Imprimir “Error” Fin de Si

Fin de Caso

Pago_total = (pago + Plazos) – Descuento // salida Imprimir Pago_total Fin Codigo Fuente en VB Module Module1 Sub Main() Dim Tipo_cliente, Frm_pago As Char Dim Descuento, Pago_total, Plazos, Pago As Double


'Entrada Console.WriteLine("Ingresar monto de Pago") Pago = Console.ReadLine() Console.WriteLine("Ingresar tipo de Cliente (A,B)") Tipo_cliente = Console.ReadLine() Console.WriteLine("Ingresar Forma de pago (C,P) ") Frm_pago = Console.ReadLine() 'proceso Select Case Tipo_cliente Case "A" If Frm_pago = "C" Then Descuento = Pago * 0.2 ElseIf Frm_pago = "P" Then Plazos = Pago * 0.1 Else Console.WriteLine("Error al ingresar formas de pago") Console.Read() End If

Case "B" If Frm_pago = "C" Then Descuento = Pago * 0.15 ElseIf Frm_pago = "P" Then Plazos = Pago * 0.05 Else Console.WriteLine("Error al ingesar Formas de pago") Console.Read() End If Case Else Console.WriteLine("Error al ingesar Tipo de cliente") Console.Read() End Select If (Descuento <> 0.0 Or Plazos <> 0.0) Then Pago_total = (Pago + Plazos) - Descuento 'Salida Console.WriteLine("Total a Pagar = " + Convert.ToString(Pago_total)) Console.Read() End If End Sub End Module C贸digo fuente c++


#include <iostream> using namespace std; int main(){ //Declarando variables char Tipo_cliente,Frm_pago; float Descuento=0,Pago_total=0,Plazos=0,Pago=0; //Entrda cout<<"Ingresar monto de Pago "<<endl;cin>>Pago; cout<<"Ingresar Tipo de Cliente(A,B) "<<endl;cin>>Tipo_cliente ; cout<<"Ingresar Forma de Pago(C,P) "<<endl;cin>>Frm_pago ; //proceso switch(Tipo_cliente ){ case 'A': {if (Frm_pago=='C' ) Descuento =Pago*0.20; else if(Frm_pago=='P' ) Plazos = Pago*0.10; else cout<<"Error al ingresar forma de pago"<<endl; break; } case 'B': {if (Frm_pago=='C' ) Descuento =Pago*0.15; else if(Frm_pago=='P' ) Plazos = Pago*0.05; else cout<<"Error al ingresar forma de pago"<<endl; break; } default:

cout<<"Error al igresar tipo de Cliente"<<endl;

} if(Plazos!=0|Descuento !=0 ){ Pago_total =(Pago+Plazos )-Descuento; //salida cout<<"Monto Total a pagar = "<<Pago_total <<endl; } system ("pause"); return 0; } C贸digo fuente en Java import java.util.Scanner;

/** * * @author Atanacio


*/ public class Problema3 { public static void main(String[] args) { // TODO code application logic here

//Declarando variables char Tipo_cliente,Frm_pago; float Descuento=0,Pago_total=0,Plazos=0,Pago=0; String salida = null;

//Entrda Scanner Entrada= new Scanner(System.in);

System.out.println("Ingresar monto de Pago "); Pago=Entrada.nextFloat();

System.out.println("Ingresar Tipo de Cliente(A,B)

");

Tipo_cliente= Entrada.next().charAt(0); System.out.println("Ingresar Forma de Pago (C,P)

");

Frm_pago= Entrada.next().charAt(0); //proceso

switch(Tipo_cliente ){ case 'A': {if (Frm_pago =='C' ) Descuento =(float) (Pago*0.20); else if(Frm_pago =='P' ) Plazos

= (float) (Pago*0.10);


else salida="Error al ingresar forma de pago"; break; } case 'B': {if (Frm_pago=='C' ) Descuento =(float) (Pago*0.15); else if(Frm_pago=='P' ) Plazos

= (float) (Pago*0.05);

else salida="Error al ingresar forma de pago"; break;}

default:

salida="Error al igresar tipo de Cliente";

} Pago_total =(Pago+Plazos )-Descuento; //Salida if(salida!=null){ System.out.println(salida); System.exit(0); } System.out.println("Monto Total a pagar = "+Pago_total ); } } 4.

Muestre la salida en cada caso del siguiente c贸digo fuente: a) public class Ejemplo1{ public static void main(String[] args){ int x=2; int y=3; if(x>2)


if(y>2){ int z=x+y; System.out.println(“Z es” +z); } else System.out.println(“x es” +x) ; } } Rpt: En esta sintaxis de código no muestra ni una salida porque la primera sentencia sale del valor establecido de la variable x ; por lo tanto no se mostrara un salida

b) public class Ejemplo1{ public static void main(String[] args){ int x=3; int y=2; if(x>2) if(y>2){ int Z=x+y; System.out.println(“Z es” +Z); } else System.out.println(“x es” +x) ; } }

Rpt: En esta sintaxis de código si muestra una salida porque la primera sentencia se ejecuta y

5.

¿Cúales de las siguientes afirmaciones son equivalentes? a) If(i>0) if(j>0) x=0; else if(k>0) y=0; else Z=0 b) If(i>0){ X=0; Else if(k>0) Y=0 } Else z=0; c) If(i>0) If(j>0) x=0; else if(k>0) y=0 else Z=0

mostrará el valor de x


d) If(i>0) If(j>0) x=0; else if (k>0) y=0; else z=0;

Rta: Son equivalentes las sentencias c y d porque los variables y secuencia l贸gica coinciden


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.