ing102 introducción a la computación
DESCRIPTION
ING102 Introducción a la Computación. Erwin Fischer. Problema. Escribir un programa para que el computador presente por pantalla la frase “Hola Mundo” Solución: en Pseudo código ( PSeInt ) Proceso HolaMundo Escribir “Hola Mundo"; FinProceso. Solución en java. public class Main { - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/1.jpg)
ING102 Introducción a la Computación
Erwin Fischer
![Page 2: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/2.jpg)
Problema
• Escribir un programa para que el computador presente por pantalla la frase “Hola Mundo”
Solución: en Pseudo código (PSeInt)
Proceso HolaMundoEscribir “Hola Mundo";
FinProceso
![Page 3: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/3.jpg)
Solución en java
public class Main {
public static void main(String[] args) { System.out.println ("Hola Mundo"); }}
![Page 4: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/4.jpg)
Solución en delphi
program Holamundo;
{$APPTYPE CONSOLE}
uses SysUtils;
begin Writeln('Hola Mundo'); readln;end.
![Page 5: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/5.jpg)
Problema. Escribir un programa para que el computador calcule los porcentajes de hombres y mujeres de acuerdo al siguiente diálogo con una persona (usuario): nº de hombres? 649 persona nº de mujeres? 125 persona % de hombres = 83.8 % de mujeres = 16.2
![Page 6: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/6.jpg)
Algoritmo. Etapas (pasos, instrucciones) que debe realizar (ejecutar) el computador para resolver el problema. Ejemplo: 1. escribir (mostrar) en la pantalla la frase “nº de hombres?” 2. leer (obtener) el n° ingresado por la persona usando el teclado 3. escribir (mostrar) en la pantalla “nº de mujeres?” 4. leer el n° ingresado por la persona 5. calcular el %(p) de hombres c/r a suma de hombres(h) y mujeres(m) como h x 100 h+m 6. escribir una línea con la frase “% de hombres = ” y el nº p
7. escribir una línea con “% de mujeres = ” y el nº 100-p
![Page 7: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/7.jpg)
Programa: Algoritmo expresado en un lenguaje de programación
Proceso CalculaPorcentajesEscribir "N° de Hombres?";Leer h;Escribir "N° de Mujeres?";Leer m;p<-h/(h+m)*100;Escribir "% de hombres = ", p;Escribir "% de mujeres = ", 100 - p;
FinProceso
En PSeInt
![Page 8: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/8.jpg)
PSeInt en detalle
Proceso CalculaPorcentajesacción 1;acción 2;…acción n;
FinProceso
Escribir "N° de Hombres?";
Sintaxis
Escribir lista_de_expresiones;Semántica
Escribe el (parámetro) lista_de_expresiones, en la pantalla del computador
Nombre del
programa
![Page 9: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/9.jpg)
Explicación en detalle
Leer h; // lee por pantalla la cantidad de hombres• lee un número desde el teclado y lo guarda en
la variable h• Nota.
//frase– es un comentario que contiene observaciones de
utilidad para el programador, pero que es ignorado por el computador al ejecutar las instrucciones del programa
![Page 10: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/10.jpg)
¿variable?• representación simbólica de un valor (número)• representa una ubicación (celda) en la memoria
del computador• capacidad: un valor/número• puede variar (cambiar) su valor
![Page 11: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/11.jpg)
Leer h
• Semántica:• 1º método (función) Leer
1.espera que el usuario ingrese un número (dígitos y enter)
2.lee (obtiene) el número
3.entrega el número como resultado
• 2º número se guarda en (asigna a ) la variable h
![Page 12: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/12.jpg)
p<-h/(h+m)*100;
calcula h/(h+m) * 100 y guarda el resultado en la variable p
Instrucción de asignación
sintaxis:
variable<-expresión;
semántica
1º evaluar expresión (calcular resultado)
2º asignar(guardar) resultado a(en) la variable
![Page 13: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/13.jpg)
Expresión
Sintaxis
se escribe en una línea (hacia el lado) y no en varios niveles
componentes: variables, constantes, operadores, funciones
Semántica • se calcula el resultado de la expresión de acuerdo a la siguiente prioridad de
los operadores:
1º operadores unarios: +, -
2º operadores “multiplicativos”: *, /
3º operadores “aditivos”: +, -
Ej: -a+b*c es (-a)+(b*c), similar a álgebra
![Page 14: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/14.jpg)
Expresión: semántica
a igual prioridad, se evalúa de izquierda a derecha.
Ej: a*b/c es (a*b)/c
paréntesis modifican o confirman orden de evaluación.
ejs: (a+b)*c modifica, a+(b*c) confirma
¿tipo del resultado? (en java)tipo común. Ej: 1 / 2 es 0 (entero), 1.0 / 2.0 es 0.5 (real)
real si operandos son de tipos distintos. Ej: 1.0/2 es 0.5
¿resultado de h/(h+m)*100.0?
![Page 15: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/15.jpg)
Escribir "% de mujeres = ", 100 - p;
• Escribe el texto % de mujeres = , el valor de la expresión 100 - p y “salta” a la siguiente línea
SintaxisEscribir lista_de_expresiones;
SemánticaEscribe el (parámetro) lista_de_expresiones, en la pantalla del computador
1º evaluar expresión (ejs: p, 100-p)
2º escribir resultado
3º posicionar el cursor al comienzo de la siguiente línea en la pantalla
Notas.
Expresión puede ser una frase. Ej: escribe “chao”;
escribe también admite expresiones. Ej: escribe 100-p;
![Page 16: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/16.jpg)
El mismo programa en Java
import java.util.Scanner;public class calculaporcentajes {
public static void main(String[] args){ int h, m; double p; Scanner s = new Scanner(System.in); System.out.println ("N° de Hombres?"); h=s.nextInt(); System.out.println ("N° de Mujeres?"); m=s.nextInt(); p = 100.0 * h /(h+m); System.out.println ("% de Hombres = " + p); System.out.println("% de mujeres = " + (100 - p)); }}
![Page 17: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/17.jpg)
Lenguaje Java: características generales
• inspirado en idioma inglés – palabras int, print, read,...
• uso de notación matemática – expresiones: 100.0*h/(h+m), p-100– funciones: print(...), readInt()
• sintaxis (gramática, escritura) reglamentada– instrucciones terminan con ;– palabras con significados especiales (int, double, print)– uso de minúsculas (salvo casos especiales)
• semántica (interpretación) precisa (sin ambigüedades)– instrucciones con significado/efecto bien definido
![Page 18: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/18.jpg)
Ejercicio Escribir las instrucciones que establezcan el diálogo indicado en el siguiente ejemplo: Calcular velocidad de un móvil distancia(metros)? 100.0 tiempo(segundos)? 9.78 velocidad=36.81 km/hora
![Page 19: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/19.jpg)
escribir “Calcular velocidad de un móvil”; escribir “distancia(metros)?”; leer d; escribir “tiempo(segundos)?”; leer t escribir “velocidad= ”; escribir (d/1000)/(t/3600);// 3.6*d/t escribir “ km/hora”; es casi equivalente a escribir “velocidad= ”,(d/1000)/(t/3600),“ km/hora”; o a escribir “velocidad= ”, 3.6*d/t, “ km/hora”;
![Page 20: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/20.jpg)
Programa completo en PSeInt Proceso CalculaVelocidad … //instrucciones FinProceso Notas todo programa en PSeInt, debe estar contenido en un proceso con Nombre y grabarse en archivo Nombre.psc
Las características de este pseudolenguaje fueron propuestas en 2001 por el
Horacio Loyarte, de la carrera de Ingeniería Informática de la FICH-UNL.
Las premisas son:
• Sintaxis sencilla • Manejo de las estructuras básicas de control • Solo 3 tipos de datos básicos: numérico, caracter /cadenas de caracteres y
lógico (verdadero-falso). • Estructuras de datos: arreglos
![Page 21: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/21.jpg)
![Page 22: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/22.jpg)
Ejercicios en PseInt
• Desarrolle un programa que calcule el área de un cuadrado, de acuerdo al dialogo indicado en el ejemplo:– Calcular el área de un cuadrado– Lado del cuadrado (en centímetros) : ? 15– El área del cuadrado es : 225
![Page 23: ING102 Introducción a la Computación](https://reader035.vdocuments.site/reader035/viewer/2022062314/56812aa8550346895d8e6be2/html5/thumbnails/23.jpg)
Problema Nº 1: (tiempo estimado: 5 minutos)Ingresa un nº: 123124 te gané
Problema Nº 2: (tiempo estimado: 10 minutos)Calcular área y perímetro de rectánguloLargo? …Ancho? …
Area=nº Perímetro=nº
Problema Nº 3: (tiempo estimado: 20 minutos)Suma de fracciones: a/b + c/da ? 1b ? 2c ? 3d ? 4
suma = 10/8 = 1 2/8 = 1.25