Repaso/resumen lectura/escritura y asignación funciones

Slides:



Advertisements
Presentaciones similares
L ISTAS E NLAZADAS No son mas que un conjunto o lista de objetos que a diferencia de los vectores, estas poseen la capacidad de crecer o decrecer. Por.
Advertisements

Clase Teórica No. 4 Programación IV
Suponiendo que además en la clase U hay: import java.util.*; class U{ static Scanner teclado = new Scanner(System.in); static public int readInt(String.
Repaso/resumen Introducción a la programación Orientada a Objetos 1.Strings 2.Archivos 3.Clases y objetos 4.Herencia 5.Ventanas 6.Dibujos y Gráficos.
Unit 1: Overview and Positioning
Repaso/resumen 1.lectura/escritura y asignación 2.funciones 3.selección de instrucciones (if-else) 4.repetición de instrucciones (while) 5.recursión 6.operadores/instrucciones.
Capítulo 1 “Elementos de Programación”
Computación II Repaso de java Karina Figueroa Mora.
Java.
1 TÉCNICAS DE PROGRAMACIÓN Lenguaje C Tercera Clase (Segunda de C)
LENGUAJE DE PROGRAMACIÓN
Java Java Java (1995) fue desarrollado en Sun Microsystems por James Gosling, Bill Joy y Guy Steele Influenciado por C++ Implementa clases, encapsulación,
Implementación de Iterables Construcción de Iterables virtuales o basados en otros iterables Fundamentos de Programación Departamento de Lenguajes y Sistemas.
Tipos genéricos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 3.
2012-BM5A. Unos tips antes de empezar: C# es Case Sensitive (sensible a mayúsculas) Pepe ≠ pepe ≠ pEpE Las asignaciones se hacen con “=” y las comparaciones.
2015-BM5A. ¿Qué estructuras de Programación conocemos? Condicional: If … { } … Else …{ } Condicional por Casos: Switch (opcion) { } Repetitiva exacta:
Clase1: lectura/escritura/asignación
Clase 8: Strings Valeria Herskovic –
Clase 9: Repaso/Resumen
Olimpiadas Chilenas de Informática - Formación
Clase 8: Strings J.Alvarez.
26-abril(J.Alvarez).
Clase 3: Funciones Valeria Herskovic –
Clase 9: Repaso/Resumen
Clase 9: Repaso/Resumen
Estructuras de Datos Recursividad.
Repaso/resumen: Introducción a la Programación orientada a objetos
Valeria Herskovic Clase 2: Funciones Valeria Herskovic
Clase 8: Strings J.Alvarez.
Clase 8: Repaso/Resumen
Clase 9: Repaso/Resumen
Objeto de clase Fracción métodos públicos representación privada constructor Fraccion(…) asigna a procedimiento void m(…) modifica b función tipo/clase.
Clase 7: Abreviaturas Valeria Herskovic –
//Leer desde (posición del cursor de) archivo //un máximo de N líneas. //Entregar también nº de líneas leídas. static public int leerLineas (BufferedReader.
Objeto de clase Fracción métodos públicos representación privada constructor Fraccion(…) asigna a procedimiento void m(…) modifica b función tipo/clase.
print “Calcular área y perímetro de círculo”
Clase 9: Repaso/Resumen
Teclado y Pantalla (Java estándar)
Repaso/resumen: Introducción a la Programación orientada a objetos
26-abril(J.Alvarez).
clase3: instrucción if-else
Clase 7: Repaso/Resumen
ESTRUCTURAS DE DATOS Docente: Ing. Yesika Medina
Repaso/resumen: Introducción a la Programación orientada a objetos
Qué es orientación a objeto ?
Clase 7 Strings 28 de Marzo (N.Baloian).
Clase 8: Strings J.Alvarez.
Repaso/resumen: Introducción a la Programación orientada a objetos
Clase1: lectura/escritura/asignación
Cliente Servidor.
Introducción a la Computación Numérica
//Leer desde (posición del cursor de) archivo //un máximo de N líneas. //Entregar también nº de líneas leídas. static public int leerLineas (BufferedReader.
JAVA: elementos básicos
String, random y stream en java
Repaso/resumen: Introducción a la Programación orientada a objetos
Clase 10 (Repaso/Resumen)
13-marzo-2008.
Leyendo strings de la línea de comandos
Ejemplos de uso //obtener una respuesta “si” o “no” static public String siNo(String x) throws IOException{ String r=U.readLine(x+” si o no?”) .trim().toLowerCase();
Archivos en disco: motivación
Clase1: lectura/escritura/asignación
5-abril (J.Alvarez) La Clase File Representa un archivo en forma abstracta Contiene el nombre, pero no se puede leer o escribir.
clase4: instrucción if-else
Problemas de Strings boolean palindrome(String x) Ej: palindrome(“reconocer”)=true boolean alfabetico(String x) Ej: alfabetico(“hola”)=true,
public class T extends Thread { private Socket s; public T(Socket x){s=x;} public void run(){try{ //escuchar al cliente BR in=new BR(new ISR(s.getInputStream()));
5-abril (J.Alvarez) La Clase File Representa un archivo en forma abstracta Contiene el nombre, pero no se puede leer o escribir.
Uso de objetos de una clase
Problema Un programa debe leer 2 números desde un objeto Console. El primero es el monto que un cliente debe pagar por una compra y el segundo la cantidad.
public class T extends Thread { private Socket s; public T(Socket x){s=x;} public void run(){try{ //escuchar al cliente BR in=new BR(new ISR(s.getInputStream()));
Transcripción de la presentación:

Repaso/resumen lectura/escritura y asignación funciones selección de instrucciones (if-else) repetición de instrucciones (while) recursión Strings Archivos Clases y objetos Herencia Ventanas

%: operador de resto de división //invertir entero de 3 dígitos int n=U.readInt(“Nº 3 dígitos?”); int d1=n/100, d3=n%10; int d2=n%100/10;//int d2=n/10%10; U.println(“inverso=”+d3+d2+d1); //cajero automático int d=U.readInt(“¿Cuánto dinero necesita?”); U.println(d/20000+” de $20.000”);d=d%20000; U,println(d/10000+” de $10.000”);d=d%10000; U.println(d/5000+” de $5.000”);d=d%5000; U.println(d/2000+” de $2.000”);d=d%2000; U.println(d/1000+” de $1.000”);

Programas lineales con ejecución de funciones predefinidas

Programas lineales con ejecución de funciones definidas por el programador //seleccionar mayor entre dos fechas static public void main(String[]args)throws IOException{ int f1=U.readInt(“fecha1(ddmmaaaa)?”), f2=U.readInt(“fecha2(ddmmaaaa)?”); U.println(“mayor=“+ ddmmaaaa(Math.max(aaaammdd(f1),aaaammdd(f2)))); } //convertir fecha ddmmaaaa a la forma aaaammdd static public int aaaammdd(int x){ int dd=x/1000000, mm=x/10000%100, aaaa=x%10000; return aaaa*10000 + mm*100 + dd; //convertir fecha aaaammdd a la forma ddmmaaaa static public int ddmmaaaa(int x){ int dd=x%100, mm=x%10000/100, aaaa=x/10000; return dd*1000000 + mm*10000 + aaaa;

Selección instrucciones (if-else) static public int diasMes(int m,int a){ if(m==1||m==3||m==5||m==7||m==8||m==10||m==12) return 31; else if(m==4||m==6||m==9||m==11) return 30; else if(m==2)//if(cond simple) sin else if(bisiesto(a)) return 29; else return 28; return 0;//mes incorrecto } static public boolean bisiesto(int x){ return x%4==0 && x%100!=0 || x%400==0;

Repetición instrucciones (while) //tabla celsius - fahrenheit int g=-20; while(g<=40){ U.println(g+”ºC=“+(9.0/5.0*g+32)+”ºF”); g=g+5; } static public double potencia (double x,int y){ if(y==0 && x==0) U.abortar(“0^0 indefinido”); double producto=1; int i=2; while(i<=Math.abs(y)){ producto=producto*x; i=i+1; if(y>=0) return producto; else return 1/producto;

Patrones para proceso de listas //ïnicializar //inicializar int mayor=0; int mayor=0; //leer 1º //repetir siempre int n=U.readInt(“nº?”); while(true){ //repetir mientras //leer while(n!=0){ int n=U.readInt(“nº?”); //procesar //condición de término if(n>mayor) mayor=n; if(n==0) break; //leer sgte //procesar n=U.readInt(“nº?”); mayor=Math.max(mayor,n); } } //finalizar //finalizar U.println(“mayor=“+mayor); U.println(“mayor=“+mayor);

Funciones Recursivas //factorial(x) static public int factorial(int x){ if(x==0) return 1; //caso base else return x*factorial(x-1); } if(x==0) return 1; //caso base

Funciones Recursivas static public int fibonacci(int i){ if(i<=2) return i-1; return fibonacci(i-1)+fibonacci(i-2); } //c(x,y)=c(x-1,y)+c(x-1,y-1); c(x,x)=c(x,0)=1 static public int combinaciones(int x,int y){ if(x==y || y==0) return 1; return combinaciones(x-1,y) + combinaciones(x-1,y-1);

Métodos void recursivos static public void misterio(){ int n=U.readInt(“nº?”); if(n==0) return; misterio(); U.println(n); } ¿Qué hace misterio(); con los sgtes datos? nº? 6 nº? 3 nº? 5 nº? 0

//obtener una respuesta “si” o “no” static public String siOno(String x){ String r=U.readLine(x+” si o no?”) .trim().toLowerCase(); if(r.equals(“si”)||r.equals(“no”)) return r; else return siOno(x); } //invierte string. Ej:inverso(“roma”)=“amor static public String inverso(String x){ if(x.length()==0) return “”; return inverso(x.substring(1))+x.charAt(0); //capicua: capicua(“reconocer”)=true static public boolean capicua(String x){ return x.equals(inverso(x));

Archivos de texto import java.io.*; class CopiarArchivos{ static public void main(String[]args)throws IOException{ BR I=new BR(new FR(U.readLine(“input?”))); PW O=new PW(new FW(U.readLine(“output?”)); int nc=0, nl=0; String linea; while((linea=I.readLine())!= null){ O.println(linea); ++nl; nc+=linea.length(); } O.close(); I.close(); U.println(nl+“ líneas “+nc+” caracteres”); }} Nota. ¿Sin usar clase U? BR kb=new BR(new InputStreamReader(System.in))); System.out.print(“input?”); String linea=kb.readLine();

Objeto de clase Fracción métodos públicos representación privada constructor Fraccion(…) asigna a procedimiento void m(…) modifica b función tipo/clase f(…) resultado consulta

Uso de objetos de una clase //Fracción más lejana (del promedio) F f=new F(U.readLine(“nº/nº?”)), s=new F(0), min=new F(f), max=new F(f), cero=new F(); int n=0; while(!f.equals(cero)){ s.sumar(f); ++n; if(f.compareTo(max)>0) max.asignar(f); if(f.compareTo(min)<0) min.asignar(f); f.asignar(U.readLine(“nº/nº?”)); } s.dividir(new F(n)); //promedio if(max.resta(s).compareTo(s.resta(min))>0) U.print(“mas lejana=“+max.toString()); else U.print(“mas lejana=“+min.toString());

Repaso/Resumen POO J.Alvarez

Repaso/Resumen POO J.Alvarez

Repaso/Resumen POO J.Alvarez