You are on page 1of 8

UNIVERSIDAD CATLICA ANDRS BELLO 20 de marzo de 2009

Guia#1. PreparaduriaAlgoritmosyprogramacionISeccion010. Programa:Unprogramaesunconjuntodeinstruccionesurdenesqueindicanala mquina las operaciones que sta debe realizar con unos datos determinados. En general,todoprogramaindicaalacomputadoracmoobtenerunosdatosdesalida,a partirdeunosdatosdeentrada. Algoritmo:Enprogramacin,unalgoritmoestablece,demaneragenricaeinformal, lasecuenciadepasosoaccionesqueresuelveundeterminadoproblema. Funcionamientobsicodeunprograma:

Pararesolverconxitounproblemadeprogramacin: 1. Definicindelproblema 2. Anlisisdelproblema 3. Diseodelalgoritmo 4. Implementardiseo.Esimportantequealestarimplementarloircomentandoel codigo, es decir, se coloca en pocas palabras la funcionalidad de los segmentos delcodigo,seintentaexplicarquesehaceensegmentosdelcodigooseexplican elfuncionamientodedeterminadascosas.
Preparaduria Algoritmos y Programacin I. Seccin 010 Luis Exposito.

UNIVERSIDAD CATLICA ANDRS BELLO 20 de marzo de 2009

Pascal:
Tiposdedatos:
Tipodedato Entero Real Lgico Carcter Cadena Declaracin PASCAL Integer Real Boolean Char String Valoresquepuedetomar Conjuntodelosnumeros Z={...,3,2,1,0,1,2,3,...} Conjuntodelosnumeros R.(racionaleseirracionales) {FALSE,TRUE} SolotomaUN(1)carcter ASCII Tomanporvaloruna secuenciadecaracteres Rango [32768,32767] [2.9e39,1.7e38] >Solotomaunode estosdosvalores. >Serepresentadentro decomillassimples() ejm.:a >Serepresentadentro decomillassimples() ejm.:Luis

Operadoresaritmticosbsicos
Operador + * / Div mod Sqr Sqrt Operacin Suma Resta Multiplicacin Divisin Divisinentera Modulo Elevaral cuadrado Raizcuadrada Operandos Real,integer Real,integer Real,integer Real,integer Integer Integer Integer,real Integer,real Ejemplo A+B AB A*B A/B AdivB AmodB Sqr(A) Sqrt(A) Resultado SumadeAyB DiferenciadeAyB ProductodeAyB CocientedeAyB CocienteenterodeA yB RestodedeAyB ElcuadradodeA LarazcuadradadeA

Preparaduria Algoritmos y Programacin I. Seccin 010 Luis Exposito.

UNIVERSIDAD CATLICA ANDRS BELLO 20 de marzo de 2009

Operadoresrelacionales UnaRELACINconsistededosoperandosseparadosporunoperadorrelacional.Sila relacin es satisfecha => true; si la relacin no se satisface => false. Los operadores debenserdelmismotipo.
Smbolo = <> < > <= >= Significado Igualque Distintoa Menorque Mayorque Menoroigualque Mayoroigualque

Operadoreslgicos Aligualquelasrelaciones,enlasoperacionesconoperadoreslgicossetienen resultadoscuyovalordeverdadtomaunodelosvaloresbooleanostrueofalse.


Operador lgico Significado Ejemplo Flag:Boolean; NOT Invierteelvalordeloperando Flag=true; queseleaplicaesteoperador. ProduceunresultadoconvalorTRUEcuandoambos operandostienenvalortrue,sinoelresultadoesFALSE ProduceunresultadoconvalorFALSEcuandoambos OR operadorestienenvaloresdefalse;encualquierotro casoelresultadotendrelvalorTRUE XOR Un operando debe tener valor TRUE y el otro FALSE paraqueelresultadotengavalorTRUE. entonces: NOTflag=false. AND .

Preparaduria Algoritmos y Programacin I. Seccin 010 Luis Exposito.

UNIVERSIDAD CATLICA ANDRS BELLO 20 de marzo de 2009

EstructuradeunprogramaenPascal: Constaentresseccionesprincipales: *Encabezado *Declaraciones *Cuerpo END. DeclaraciondePROCEDIMIENTOS.(Procedure) DeclaraciondeFUNCIONES.(Function) CuerpoPrincipal. BEGIN Instrucciones; BEGIN Instrucciones; END;

Nombredelprograma.(Program) DeclaraciondeUNIDADES.(Uses) DeclaraciondeETIQUETAS.(Label) DefiniciondeCONTANTES.(Const)

Encabezado.

DefiniciondeTIPOS.(Type) DefiniciondeVARIABLES.(Var)

Declaraciones.

Cuerpoprincipal

OTRO BLOQUE.

Encabezado: Nombredelprograma: Sintaxis: PROGRAMNombrePrograma;


Preparaduria Algoritmos y Programacin I. Seccin 010 Luis Exposito.

UNIVERSIDAD CATLICA ANDRS BELLO 20 de marzo de 2009

Declaraciones: Uses: Esta clausula es para la utilizacion de modulos externos al lenguaje de programacion,esdecir,esdondesedeclaranlaslibrerias.LibreramasusadaCRT. otros. Sintaxis: 1.Porsuvalor(literal). NOMBRECONSTANTE=Expresion; ejm.: PI=3,14159265; Enprogramacinesunabuenaprcticaescribirlosidentificadoresdelasconstantes enmaysculas,deestaformaesmsfcillocalizarlosenelcdigodeunprograma. Tipos: Aqudeclaramoslostiposdedatosdefinidosporelusuario. Sintaxis: nombreTipo=declaracionTipo; Variables: nombreVariable:TipoDeDato;
Preparaduria Algoritmos y Programacin I. Seccin 010 Luis Exposito.

Constantes:

En Pascal, una constante puede ser de tipo entero, real, carcter, cadena, entre

ejm.: mayusculas=A..Z;

Sintaxis:

UNIVERSIDAD CATLICA ANDRS BELLO 20 de marzo de 2009

yparadeclararvariasvariablesdelmismotipodedato: nombreVariable1,nombreVariable2,,nombreVariableN:TipoDeDato; (*)Restriccion: Los nombres de: Programas, Variables y Constantes tienen que empezar con algun carcter alfabetico, y no puede ser alguna palabra reservada de Pascal. AESTETIPODEPROGRAMACIONSELELLAMAPROGRAMACIONESTRUCTURADA. Todo lenguaje de programacion tiene la sentencia basica de ASIGNACION, es decir, esta sentencia es la que permite modificar el valor de una variable en el codigo, en Pascalserepresentaporlasistaxis: Sixesunavariableenteraentonces,x:=4; Operacionesdeentradaysalida(I/O): Esta invocacion sirve para escribir por consola o pantalla, pudiendo ser los items alguna variable con un dato, o simplemente una cadena de caracteres colocandolo entrecomillassimples.
Preparaduria Algoritmos y Programacin I. Seccin 010 Luis Exposito.

EslaviadecomunicacinPROGRAMA<>USUARIO. Laoperacindesalidaoescrituraestadadaporlasintaxis: Write(item1,item2,,itemN); Writeln(item1,item2,,itemN);

UNIVERSIDAD CATLICA ANDRS BELLO 20 de marzo de 2009

Ejm. Write(hola,nombre); nombre: variable definida anteriormente y en alguna parte del codigoseleasignaunvalorespecifico. Porque existen WRITE y WRITELN? La primera solo escribe los items que les indiques, y writeln luego de escribir los items que colocaste + una nueva linea, dejandoelcursoraliniciodelasiguientelinea. Encambioestasinvocacionessonparalalecturadedatosqueelusuariointroduzca porpantalla,esdecir,elusuarioalescribirporconsola(luegodepedirlealgunvaloro dato) estos datos tienen que ser GUARDADOS en alguna VARIABLE ya declara en el programayusandoestasfuncionesseguardan. Ejm. Read(cedula); cedula: variable definida anteriormente y lo que introduzca el usuarioporconsolaseraguardadoenestavariable. NOTAIMPORTANTE:Lalecturavaadependerdeltipodedatoqueseesteleyendo,y aquesdondeseencuentraladiferenciadelREADyelREADLN,yaqueelreadleede BUFFERhastaqueescuentraelcarcterdeenterodeespacio,encambioreadlnleelo mismo pero baja el cursor a la siguiente linea sin importar si hay algo mas en esta linea. Si la lectura es de un tipo de dato REAL uno puede truncar para que muestre la cantidaddeenterosydecimalesdeseados.Ejm.:read(nota:2:2);
Preparaduria Algoritmos y Programacin I. Seccin 010 Luis Exposito.

Laoperacindeentradaolecturaestadadaporlasintaxis: Read(item1,item2,,itemN); Readln(item1,item2,,itemN);

UNIVERSIDAD CATLICA ANDRS BELLO 20 de marzo de 2009

MiprimerprogramaenPascal: Escribirporpantalla: Holamundo! EnPascal,elcdigofuentededichoprogramapuedeser: programHolaMundo; usesCrt; Begin ClrScr; Write('Holamundo'); End. MisegundoprogramaenPascal:(2*pi*R) Unprogramaquecalculeelareadeuncirculo. INVESTIGAR: FuncionespredeterminadasdellenguajedeprogramacionPASCAL. HACER: Un programa que le pida al usuario una cantidad que representara SEGUNDOS y a partirdeestedato,imprimaporpantallacuantosminutos,horas,diasrepresentaeste.

Preparaduria Algoritmos y Programacin I. Seccin 010 Luis Exposito.

You might also like