Anda di halaman 1dari 16

2do Secundaria

1I
A UNID

Computacin

PSe Int

Razonamiento y Demostracin
Conceptualiza un conjunto. Identifica los tipos de conjuntos. Clasifica los conjuntos segn la caracterstica de sus elementos.

ian diantes que se inic tu es s lo a ir ist as o para PSeInt est pensad computacionales. os m rit go al o as m de progra to para en la construccin mo primer contac co r za ili ut e el su se turas de El pseudocdigo el uso de estruc o m co os sic b tos con introducir concep tener que lidiar sin c, et , es bl ria s, va te control, expresione lenguaje real. Es un de s xi ta sin es de la rea de las particularidad principiante la ta al le ar lit ci fa ndo un software pretende lenguaje presenta do eu ps te es en nas escribir algoritmos darle ademas algu in br y , as ci en ist as y as y conjunto de ayud encontrar errores a en ud ay le e qu ionales herramientas adic mos. gica de los algorit comprender la l

PSeInt

COLEGIO ALBERT EINSTEIN

2do Secundaria

1 1
N SEMA A

Computacin

Algoritmos
Aprendizajes Esperados
Conocer y utilizar las diversas formas de representar los algoritmos

Qu es un Algoritmo?

b) PSEUDOCDIGO

define algoritmo como un conjunto ordenado y finito de operaciones que permite hallar la solucin de un problema. Mtodo y notacin en las distintas frmulas del clculo. El algoritmo constituye un mtodo para resolver un problema mediante una secuencia de pasos a seguir. Dicha secuencia puede ser expresada en forma de diagrama de flujo con el fin de seguirlo de una forma ms sencilla. De acuerdo con el concepto anterior, el algoritmo podra estar incluido en la definicin de programa de ordenador de la Ley de Propiedad Intelectual (TRLPI), al referirse a ste como toda secuencia de instrucciones o indicaciones destinadas a ser utilizadas, directa o indirectamente, en un sistema informtico para realizar una funcin o una tarea o para obtener un resultado determinado, cualquiera que fuere su forma de expresin y fijacin.

m Es una forma de representar un algoritmo, que se acerca a los lenguajes deprogramacin y con elementos del lenguaje natural. m El pseudocdigo se compone de: - Cabecera - Declaraciones - Cuerpo m La cabecera es la parte del algoritmo que posee el nombre de ste. m Las declaraciones son las variables y constantes que utilizar el algoritmo para resolver el problema. m El cuerpo son el conjunto de instrucciones o acciones que estn entre el Inicio y el Fin. a Representacin mediante Pseudocdigo:

Todo algoritmo puede ser representado por: a) Lenguaje natural. b) Pseudocdigo. c) Diagramas de flujo. d) Lenguajes de programacin. a) LENGUAJE NATURAL
m Problema: Sumar 2 nmeros.

c) DIAGRAMAS DE FLUJO

mRepresentacin mediante Lenguaje natural: - Inicio Suma - Ingresar primer nmero - Guardar nmero en variable a - Ingresar segundo nmero - Guardar nmero en variable b - Sumar a y b - Guardar resultado en R - Mostrar R - Fin m Desventajas: - Ambiguo - Extenso
COLEGIO ALBERT EINSTEIN

Un diagrama de flujo es un diagrama que utiliza smbolos (cajas) estndar y que tiene los pasos del algoritmo escritos en esas cajas unidas por flechas, denominadas lneas de flujo, que indican las secuencia que debe ejecutar el algoritmo

2do Secundaria

1 2
N SEMA A

Computacin

Simbologas de diagramas, conceptos bsicos


Aprendizajes Esperados
Conoce adecuadamente los elementos de un programa

DIAGRAMA DE FLUJO Es un esquema para representar grficamente un algoritmo. Se basan en la utilizacin de diversos smbolos para representar operaciones especficas, es decir, es la representacin grafica de las distintas operaciones que se tienen que realizar para resolver un problema, con indicacin expresa el orden lgico en que deben realizarse. Se les llama diagramas de flujo porque los smbolos utilizados se conectan por medio de flechas para indicar la secuencia de operacin. Para hacer comprensibles los diagramas a todas las personas, los smbolos se someten a una normalizacin; es decir, se hicieron smbolos casi universales, ya que, en un principio cada usuario podra tener sus propios smbolos para representar sus procesos en forma de Diagrama de flujo. Esto trajo como consecuencia que slo aquel que conoca sus smbolos, los poda interpretar. La simbologa utilizada para la elaboracin de diagramas de flujo es variable y debe ajustarse a un patrn definido previamente. El diagrama de flujo representa la forma ms tradicional y duradera para especificar los detalles algortmicos de un proceso. Se utiliza principalmente en programacin, economa y procesos industriales. IMPORTANCIA DE LOS DIAGRAMAS DE FLUJO Los diagramas de flujo son importantes porque nos facilita la manera de representar visualmente el flujo de datos por medio de un sistema de tratamiento de informacin, en este realizamos un anlisis de los procesos o procedimientos que requerimos para realizar un programa o un objetivo. Por ejemplo: si nosotros queremos realizar una pizza, primero necesitamos los ingredientes, este ya seria un proceso, luego de haber conseguido los ingredientes necesitamos realizar la masa, este seria otro proceso, luego realizamos la salsa, este seria otro procesos y finalmente unimos todo lo que hemos hecho y agregamos los complemento como el jamn, el queso, etc. Para la realizacin de esta pizza ya contamos con 4 procesos los cual podemos desarrollar en un diagrama de flujo y unirlos en el mismo. Para as obtener un producto final que seria nuestra pizza.

SMBOLOS UTILIZADOS EN LOS DIAGRAMAS DE FLUJO

Este se utiliza para representar el inicio o el fin de un algoritmo. Tambin puede representar una parada o una interrupcin programada que sea necesaria realizar en un programa. Este se utiliza para un proceso determinado, es el que se utiliza comnmente para representar una instruccin, o cualquier tipo de operacin que origine un cambio de valor. Este smbolo es utilizado para representar una entrada o salida de informacin, que sea procesada o registrada por medio de un perifrico. Este es utilizado para la toma de decisiones, ramificaciones, para la indicacin de operaciones lgicas o de comparacin entre datos. Este es utilizado para enlazar dos partes cualesquiera de un diagrama a travs de un conector de salida y un conector de entrada. Esta forma un enlace en la misma pgina del diagrama.

COLEGIO ALBERT EINSTEIN

2do Secundaria

Computacin

Este es utilizado para enlazar dos partes de un diagrama pero que no se encuentren en la misma pagina. Este es utilizado para indicar la secuencia del diagrama de flujo, es decir, para indicar el sentido de las operaciones dentro del mismo. Este es utilizado para representar la salida de informacin por medio de la impresora. Este es utilizado para representar la salida o para mostrar la informacin por medio del monitor o la pantalla.

Ejercicios de Aplicacin

COLEGIO ALBERT EINSTEIN

(2x)

4x

(5

2 )

25

2do Secundaria

1 3
N SEMA A

Computacin

Variables, Constantes
Aprendizajes Esperados
Reconocer y utilizar algoritmos, pseudocdigos como herramientas para el bosquejo de solucin de un problema

Constantes Una constante es un dato numrico o alfanumrico que no cambia durante la ejecucin del programa. Ejemplo: pi = 3.1416Constantes Una constante es un dato numrico o alfanumrico que no cambia durante la ejecucin del programa. Ejemplo: pi = 3.1416 Variable Es un espacio en la memoria de la computadora que permite almacenar temporalmente un dato durante la ejecucin de un proceso, su contenido puede cambiar durante la ejecucin del programa. Para poder reconocer una variable en la memoria de la computadora, es necesario darle un nombre con el cual podamos identificarla dentro de un algoritmo. Ejemplo: area = pi * radio ^ 2 Las variables son : el radio, el area y la constate es pi Tipos De Datos Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carcter, tal como b, un valor entero tal como 35. El tipo de dato determina la naturaleza del conjunto de valores que puede tomar una variable.

Tipos de Datos Simples Datos Numricos: Permiten representar valores escalares de forma numrica, esto incluye a los nmeros enteros y los reales. Este tipo de datos permiten realizar operaciones aritmticas comunes. Datos lgicos: Son aquellos que solo pueden tener dos valores (cierto o falso) ya que representan el resultado de una comparacin entre otros datos (numricos o alfanumricos). Datos alfanumricos (string): Es una secuencia de caracteres alfanumricos que permiten representar valores identificables de forma descriptiva, esto incluye nombres de personas, direcciones, etc. Es posible representar nmeros como alfanumricos, pero estos pierden su propiedad matemtica, es decir no es posible hacer operaciones con ellos. Este tipo de datos se representan encerrados entre comillas. INSTRUCCIONES DE ENTRADA SALIDA Y ASIGNACION ENTRADA Y SALIDA DE INFORMACION Los clculos que realizan las computadoras requieren para ser tiles la entrada de datos necesarios para ejecutar las operaciones que posteriormente se convertirn en resultados, es decir, salida. Las operaciones de entrada permiten leer determinados valores y asignarlos a determinada variables. Esta entrada se conoce como operacin de lectura ( read). Los datos de entrada se introducen al procesador mediante dispositivos de entrada. La salida puede aparecer en un dispositivo de salida. La operacin de salida se denomina escritura (write) En la escritura de algoritmos las acciones de lectura y escritura se representan por los formatos siguientes: Leer (lista de variables de entrada) Escribir (lista de variables de salida)
5

COLEGIO ALBERT EINSTEIN

2do Secundaria

Computacin

PROCESO DE ASIGNACION La operacin de asignacin es el modo de darle valores a una variable. La operacin de asignacin se representa con el smbolo u operador. La operacin de asignacin se conocen como instrucciones o sentencia de asignacin cuando se refiere a un lenguaje de programacin. El formato general de una operacin de asignacin es: nombre de la variable <- expresin La flecha (operador de asignacin) se sustituye en otros lenguajes por = (BASIC, FORTRAN ) o = Pascal). Sin embargo, es preferible el uso de la flecha en la redaccin del algoritmo, pera evitar ambigedades dejando el uso del smbolo = exclusivamente para el operador de igualdad. La operacin de asignacin: A <5; Significa que a la variable A se le ha asignado el valor 5. Las operaciones de asignacin se clasifican en: - Asignacin aritmtica - Asignacin lgica - Asignacin de caractres EXPRESIONES las expresiones son combinaciones de constantes, variables, smbolos de operaciones, parntesis y nombres de funciones especiales. Las mismas ideas son utilizadas en notacin matemtica tradicional; por ejemplo: a - ( b + 3 ) /c Una expresin consta de operadores y operando. Segn sea el tipo de objetos que manipulan, se clasifican las expresiones en: - Aritmticas - Relacinales - Lgicas - Carcter OPERADORES ARITMETICOS las expresiones aritmticas son anlogas a las frmulas matemticas. Las variables y constantes son numricas (real o entera) y las operaciones son las aritmticas. + Suma - Resta * Multiplicacin / Divisin ** Exponenciacin div Divisin entera mod Mdulo (resto) Operadores DIV y MOD El smbolo / se utiliza para la divisin real y el operador div en algunos lenguajes, por ejemplo BASIC. A div B Slo se pueden utilizar si A y B son expresiones enteras y obtienen la parte entera A/B. Por consiguiente. 19 div 6 toma el valor 3.
COLEGIO ALBERT EINSTEIN

OPERADORES LOGICOS (BOOLEANOS) un segundo tipo de expresiones es la expresin lgica o booleana, cuyo valor es siempre verdadero o falso. Se denomina tambin expresiones booleanas. Las expresiones lgicas se forman combinando constantes lpogicas, variables lgicas y otras expresiones utilizando los operadores not, and, y or, y los operadores relacionales (de relacin o comparacin ) =, <, >, <=, >=, <>. OPERADORES RELACIONALES Los operadores relacionales o de relacin permiten realizar comparaciones de valores de tipo numrico o carcter. Los operadores de relacin sirven para expresar las condiciones en los algoritmos. Los operadores de relacin se recogen en la Tabla. Operador Significado < Mayor que > Menor que = Igual que <= Mayor o Igual a => Menor o Igual a <> Distinto de OPERADORES LOGICOS Los operadores lgicos o bolanos bsicos son not(no), and (y), y or (o). La tabla recoge el funcionamiento de dichos operadores.

Ejercicios de Aplicacin

Escribir un algoritmo que lea dos nmeros e imprima del primero su cuadrado y del segundo su cubo.

2) Algoritmo que lea dos nmeros, calculando y escribiendo el valor de su suma, resta, producto y divisin.

(2x)

4x

(5

2 )

25

2do Secundaria

1 4
N SEMA A

Computacin

Identificadores, palabras reservadas


Aprendizajes Esperados
Comprender y entender cada una de las fases de desarrollo de un programa

IDENTIFICADORES Y PALABRAS RESERVADAS Identificador Los identificadores (IDs) son smbolos lxicos que nombran entidades. El concepto es anlogo al de nombre. Los identificadores se usan ampliamente en prcticamente todos los sistemas de procesamiento de la informacin. Nombrar las entidades hace posible referirse a las mismas, lo cual es esencial para cualquier tipo de procesamiento simblico. Identificadores en lenguajes informticos En los lenguajes informticos, los identificadores son elementos textuales (tambin llamados smbolos) que nombran entidades del lenguaje. Algunas de las de entidades que un identificador puede denotar son las variables, las constantes, los tipos de dato, las etiquetas, las subrutinas (procedimientos y funciones) y los paquetes. En muchos lenguajes algunas secuencias tienen la forma lxica de un identificador pero son conocidos como palabras clave (o palabras reservadas). Lo habitual es que si un identificador se corresponde con una palabra clave o reservada, ste ya no pueda utilizarse para referirse a otro tipo de entidades como variables o constantes (en unos pocos lenguajes, como PL/1, esta distincin no est del todo clara). Los lenguajes informticos normalmente ponen restricciones en qu caracteres pueden aparecer en un identificador. Por ejemplo, en las primeras versiones de C y C++, los identificadores estn restringidos para que sean una secuencia de una o ms letras ASCII, dgitos numricos (que en ningn caso deben aparecer como primer carcter) y barras bajas. Las versiones posteriores de estos lenguajes, as como otros muchos ms lenguajes modernos soportan casi todos los caracteres Unicode en un identificador. Una restriccin comn es que no est permitido el uso de espacios en blanco ni operadores del lenguaje. En lenguajes de programacin compilados, los identifiCOLEGIO ALBERT EINSTEIN

cadores generalmente son entidades en tiempo de compilacin, es decir, en tiempo de ejecucin el programa compilado contiene referencias a direcciones de memoria y offsets ms que identificadores textuales (estas direcciones de memoria u offsets, han sido asignadas por el compilador a cada identificador). En lenguajes interpretados los identificadores estn frecuentemente en tiempo de ejecucin, a veces incluso como objetos de primera clase que pueden ser manipulados y evaluados libremente. En Lisp, stos se llaman smbolos. Los compiladores e intrpretes normalmente no asignan ningn significado semntico a un identificador basado en la secuencia de caracteres actual. Sin embargo, hay excepciones. Por ejemplo: En Perl una variable se indica utilizando un prefijo llamado sigil, que especifica aspectos de cmo se interpreta la variable en las expresiones. En Ruby una variable se considera automticamente como inmutable si su identificador empieza con una letra mayscula. En Fortran, la primera letra de una variable indica si por defecto es creada como entero o como flotante. Palabras reservadas Las palabras reservadas son palabras claves las cuales tienen un significado especial dentro del lenguaje, estas palabras estn en el idioma ingls o algunas solo son abreviaturas de stas. A continuacin se muestra un listado de algunas de las palabras reservadas de Turbo Pascal, es decir aquellas que no pueden ser utilizadas para darle nombre a nuestras variables, constantes, funciones o procedimientos:

2do Secundaria

Computacin

Absolute Asm Circle Destructor Downto External Forward If Inline Label Not Or Procedure Record Set String Type Uses While

And Array Begin Case Const Constructor Div Do Else End File For Function Goto Implementation In Interface Interrupt Mod Nil Object Of Packed Private Program Random Rectangle Repeat Shl Shr Then To Unit Until Var Virtual With Xor

No es necesario aprendernos todas estas palabras en un solo da, ya que con el tiempo y la prctica habremos aprendido un gran nmero de stas, sin siquiera darnos cuenta. Para conocer ms palabras reservadas, puede encontrar informacin en el ndice de temas que vienen incluidos en la Ayuda de Turbo Pascal.

Ejercicios de Aplicacin

CALCULAR EL REA DE UN RECTNGULO Proceso sin_titulo Escribir ingrese la base del rectangulo Leer b Escribir ingrese la altura Leer h a<-b*h Escribir el area del rectangulo es : , a FinProceso SUMA,MULTIPLICACIN Y DIVISIN Proceso sin_titulo Escribir ingrese el primer valor Leer a Escribir ingrese el segundo valor Leer b s<-a+b m<-a*b d<-a/b Escribir la suma de los valores es: , s Escribir la multiplicacion de los valores es: , m Escribir la division de los valores es: , d Finproceso

COLEGIO ALBERT EINSTEIN

(2x)

4x

(5

2 )

25

2do Secundaria

7 1 y 5
N SEMA A

Computacin

structuras bsicas de programacin


Aprendizajes Esperados
Comprender los conceptos de tipos de datos}, variables, instrucciones de entrada, salida y asignacin

Estructuras de control Las estructuras de control tienen una finalidad bastante definida: su objetivo es ir sealando el orden en que tienen que sucederse los pasos de un algoritmo. Veamos un ejemplo: supongamos que acabamos de mostrar un mensaje en la pantalla que pregunte al usuario desea seguir adelante?. Obviamente, de la respuesta del usuario va a depender la siguiente accin del programa. Por ejemplo, si este mensaje se nos presenta tras haber pulsado un botn de cerrar la aplicacin, si nosotros elegimos S, la aplicacin se cerrar, y si elegimos No, la aplicacin seguir adelante. El programador tiene que haber escrito cdigo para las dos posibilidades, aunque cuando el programa est funcionando, slo se elegir una. Las estructuras de control son de tres tipos: 1. Secuenciales 2. Selectivas 3. Repetitivas Estructuras secuenciales Una estructura de control secuencial, en realidad, no es ms que escribir un paso del algoritmo detrs de otro, el que primero se haya escrito ser el que primero se ejecute (al implementarlo, por ejemplo). Veamos un ejemplo: queremos leer el radio de un crculo, calcular su rea y mostrar por pantalla al usuario el resultado. Declaracion de variables REAL: radio, area fin declaracion de variables inicio mostrar por pantalla dame el radio del circulo leer del teclado la variable radio area <- 3.14159*radio mostrar por pantalla el area del circulo es: mostrar por pantalla el contenido de la variable area fin Ahora vamos a pasar a las estructuras selectivas y a las repetitivas. Para ello, necesitamos primero hablar un poco de... CONDICIONES.
COLEGIO ALBERT EINSTEIN

La palabra condicin nos sugiere frases como lo har a condicin de que me dejes.... Analicemos esta frase con un poco de detenimiento. Decimos lo har, pero, lo har siempre, pase lo que pase? o, por el contrario, lo har si antes hay algo que debe cumplirse? En la frase est claro que no se ha dicho lo har sin ms, si no que hay como una pequea clusula SI me dejas tu AUTO. Ya nos ha vuelto a aparecer el SI; esto parece querer decir que debe ser algo importante. Lo que significa SI me dejas tu AUTO es lo siguiente, en caso de que la accin dejarme tu auto sea cierta (o verdad, usar ambas palabras), yo lo har. Pero si la accin dejarme tu auto es falsa (o mentira), yo NO lo har. En esto reside el quid de las estructuras que vamos a ver a continuacin: se EVALUA una condicin, y se acta en consecuencia, segn que la condicin sea VERDADERA o FALSA. Estructuras selectivas Estas estructuras se utilizan para TOMAR DECISIONES (por eso tambin se llaman estructuras de decisin o alternativas). Lo que se hace es EVALUAR una condicin, y, a continuacin, en funcin del resultado, se lleva a cabo una opcin u otra. Alternativas simples Son los conocidos si... entonces. Se usan de la siguiente manera (una vez ms, la escritura es ms o menos personal, siempre que las intenciones queden claras para todos): yo quiero evaluar una condicin, y si se cumple (es decir, si es cierta), entonces realizar una serie de pasos. Esto lo podemos escribir as: SI se cumple la condicion, ENTONCES: Hago el paso 1 .... Hago el paso N fin del SI Muy estrictamente, sera: SI se cumple la condicion, ENTONCES: inicio Hago el paso 1
9

2do Secundaria

Computacin

.... Hago el paso N fin fin del SI pero con una buena sangra nos podemos evitar escribir de ms ;) Es importante cerrar el SI, ya que, si no se cumple la condicin, el programa seguir a continuacin de donde termina el SI. Por ejemplo, queremos calcular la raz cuadrada de un nmero; sin embargo todos sabemos (supongo! ;)) que la raz cuadrada de un nmero negativo NO es un nmero real. Esto quiere decir que, tras leer el nmero por teclado, tendremos que ver si es positivo, ya que slo en este caso podremos calcular su raz cuadrada. Veamos como queda: Declaracion de variables REAL: numero, raiz fin declaracion de variables inicio mostrar por pantalla introduce un numero leer del teclado la variable numero SI numero >= 0 ENTONCES: raiz <- raiz_cuadrada(numero) mostrar por pantalla la raiz cuadrada es: mostrar por pantalla raiz fin del SI fin Como extraer una raz cuadrada es una operacin que, en principio, no es elemental, yo he puesto raiz_ cuadrada(numero), eso significa que, en alguna parte, tengo definida una funcin que me calcula la raz cuadrada de un nmero. Ya hablaremos de funciones y subrutinas ms adelante, pero hago esta aclaracin para que conste que raiz_cuadrada no forma parte de ningn tipo de especificacin de pseudocdigo ;-) Sin embargo, hubiera sido bonito haber podido avisar al usuario de que no podamos calcular la raz cuadrada en caso de que el nmero fuera negativo, pero no os preocupeis, para ello tenemos las... Alternativas dobles O el famoso tro si ... entonces ... sino ;-D Se usan de esta forma: queremos evaluar una condicin, si es verdad, realizar una serie de pasos, y SI NO es verdad (es decir, si es falsa, si es una puerca mentira cochina... ;) ), entonces realizar otra serie de pasos. Esto lo podemos escribir as: SI se cumple la condicion, ENTONCES: Hago el paso A1 .... Hago el paso AN y SI NO se cumple la condicion, ENTONCES: Hago el paso B1 .... Hago el paso BM fin del SI Con esto, nuestro algoritmo para la raz cuadrada quedara: Declaracion de variables REAL: numero, raiz fin declaracion de variables
COLEGIO ALBERT EINSTEIN

inicio mostrar por pantalla introduce un numero leer del teclado la variable numero SI numero >= 0 ENTONCES: raiz <- raiz_cuadrada(numero) mostrar por pantalla la raiz cuadrada es: mostrar por pantalla raiz SI NO es numero >=0 ENTONCES: {es decir, si numero es negativo} mostrar por pantalla lo siento, no puedo calcular la raiz cuadrada de un numero negativo fin del SI fin Alternativas mltiples Es muy probable que tengamos la necesidad de incluir en nuestros programas alternativas con muchas opciones posibles. Esto lo podramos hacer a base de anidar si ... entonces ... si no, pero si es un nmero elevado de alternativas, se hace demasiado farragoso como para resultar inteligibles. Por ejemplo, si queremos hacer un men que d a elegir cuatro opciones, un posible algoritmo sera: {Algoritmo MENU a base de si ... entonces ... sino} Declaracion de variables ENTEROS: opcion fin declaracion de variables inicio mostrar por pantalla menu de opciones: mostrar por pantalla 1. Diccionario de sinonimos mostrar por pantalla 2. Diccionario de antonimos mostrar por pantalla 3. Buscar palabra mostrar por pantalla 4. Salir leer del teclado la variable opcion SI opcion = 1 ENTONCES {lo que toque a esta opcion} SI NO, ENTONCES SI opcion = 2 ENTONCES {lo que toque a esta opcion} SI NO, ENTONCES SI opcion = 3 ENTONCES {lo que toque a esta opcion} SI NO, ENTONCES SI opcion = 4 ENTONCES {lo que toque a esta opcion} SI NO, ENTONCES mostrar por pantalla opcion incorrecta fin del SI fin del SI fin del SI fin del SI fin Farragoso, verdad? Para evitar esto (os imaginas que en vez de cuatro fueran 20 las alternativas?), est la estructura segn sea. La idea es esta; por ejemplo, como en el algoritmo que hemos puesto del men, pedimos al usuario que entre una opcin, y hay cuatro posibilidades, cuatro posibles valores para los que haremos algo. Entonces, SEGUN lo que valga la variable opcin, elegi10

2do Secundaria

Computacin

remos una alternativa de entre todas las posibles. La forma de escribir esto en pseudocdigo es: SEGUN SEA la variable o la expresion HACER VALOR1: {las acciones que toque} ... VALORN: {las acciones que toque} por defecto: {las acciones que toque} fin SEGUN Qu pinta ah ese por defecto? No es ms que una alternativa por si acaso se elige alguna opcin no contemplada entre las que se ofrece. Como ejemplo, vamos a ver nuestro men utilizando la alternativa mltiple SEGUN SEA: {Algoritmo MENU a base de segun sea} Declaracion de variables ENTEROS: opcion fin declaracion de variables inicio mostrar por pantalla menu de opciones mostrar por pantalla 1. Diccionario de sinonimos mostrar por pantalla 2. Diccionario de antonimos mostrar por pantalla 3. Buscar palabra mostrar por pantalla 4. Salir leer del teclado la variable opcion SEGUN SEA opcion HACER: opcion = 1 : {lo que toque a esta opcion} opcion = 2 : {lo que toque a esta opcion} opcion = 3 : {lo que toque a esta opcion} opcion = 4 : {lo que toque a esta opcion} por defecto: {mostrar un posible mensaje de error} fin SEGUN fin As queda mucho ms claro, no slo para nosotros, si no para cualquier persona que tuviera que leerlo; adems, es una forma ms sencilla de manejar una alternativa mltiple :) Podemos abreviar un poquito el texto; es igualmente vlido poner, dentro del SEGUN, lo siguiente: SEGUN SEA opcion HACER: 1 : {lo que toque a esta opcion} 2 : {lo que toque a esta opcion} 3 : {lo que toque a esta opcion} 4 : {lo que toque a esta opcion} por defecto: {mostrar un posible mensaje de error} fin SEGUN Me quedan las estructuras repetitivas, que las veremos en la prxima entrega, si no esto puede ser mucho trago de golpe O:) En cualquier caso, ya tienes cosas para ir empezando a pensar en la escritura de algoritmos. Yo sugiero los siguientes... Estructuras de control; repetitivas Estructuras repetitivas Este tipo de estructuras marcan como orden de ejecucin la reiteracin de una serie de acciones basndose en un bucle. Un BUCLE (loop, en ingls) es una parte de algoritmo cuyas instrucciones son repetidas un cierto nmero de
COLEGIO ALBERT EINSTEIN

veces, mientras se cumple una cierta condicin que ha de ser claramente especificada. La condicin podr ser verdadera o falsa, y se comprobar en cada paso o iteracin del bucle. Bsicamente, existen tres tipos de estructuras repetitivas; los bucles mientras... (o while), los bucles repetir... mientras que (o do... while) y los bucles desde (o bucles for). Vamos a verlas todas dentro de un ejemplo para clarificar los dos prrafos iniciales, que quedan tan bonitos como oscuros para quien nunca ha visto un bucle. hay que hacer notar que todo bucle consta de tres partes bsicas, a saber: Decisin: donde se evala la condicin y, en caso de ser cierta, se ejecuta el... Cuerpo del bucle: son las instrucciones que queremos ejecutar repetidamente un cierto nmero de veces. Salida del bucle: es la condicin que dice cundo saldremos de hacer repeticiones (mientras protestes, seguirs fregando platos, en cuanto dejas de protestar, se acab fregar ms platos). Una forma de controlar un bucle es mediante una variable llamada CONTADOR, cuyo valor se incrementa o decrementa en una cantidad constante en cada repeticin que se produzca. Tambin, en los bucles suele haber otro tipo de variables llamadas ACUMULADOR, cuya misin es almacenar una cantidad variable resultante de operaciones sucesivas y repetidas. Es como un contador, con la diferencia que el incremento/decremento es variable. Vamos a suponer que estamos pensando en un programa que deba REPETIR algunas veces una accin. Pues bien, las ESTRUCTURAS REPETITIVAS vienen a rescatarnos de la tediosa tarea de repetir cientos de lneas que en unas pocas quedan apaadas. Estructura MIENTRAS(condicin) En este tipo de estructura, el cuerpo del bucle (ya sabe las acciones que deben ejecutarse repetidas veces) se repite MIENTRAS se cumple una determinada condicin, que especificamos entre parntesis. Su estructura, genricamente, es esta: mientras(condicin) hacer accin 1 ........ accin N fin mientras Aplicado a nuestra situacin real, sera: Declaracin de variables ENTEROS: Contador fin Declaracin variables inicio Contador <- 1 mientras(Contador<=300.000.000) hacer mostrar por pantalla Prometo ser bueno O:-) Contador <- Contador+1 fin mientras fin

11

2do Secundaria

Computacin

Ejercicios de Aplicacin

EJERCICIO CREACIN DE MENS PSEINT HACER UN ALGORITMO QUE MUESTRE UN MEN DE OPCIONES, 1. SUMA, 2. RESTA, 3. MULTIPLICA, 4. DIVIDE, 5. SALIR; QUE AL PEDIRLE AL USUARIO DOS NMEROS Y AL ELEGIR UNA DETERMINADA OPCIN, EJEMPLO, 1. SUMA, EL PROGRAMA HAGA LAS OPERACIONES CORRESPONDIENTES SEGN CADA CASO. SOLUCIN: Proceso MENU OPCION<-1; MIENTRAS OPCION<>5 HACER NUMERO1<-0; NUMERO2<-0; ESCRIBIR INGRESE UN NUMERO; LEER NUMERO1; ESCRIBIR INGRESE OTRO NUMERO; LEER NUMERO2; Escribir SELECCIONES UNA DE LAS OPCIONES; Escribir 1. SUMA; Escribir 2. RESTA; Escribir 3. MULTIPLICAR; Escribir 4. DIVIDIR; Escribir 5. SALIR; LEER OPCION; SI OPCION=1 ENTONCES RESULTADO<-NUMERO1+NUMERO2; FinSi SI OPCION=2 ENTONCES RESULTADO<-NUMERO1-NUMERO2; FinSi SI OPCION=3 ENTONCES RESULTADO<-NUMERO1*NUMERO2; FinSi SI OPCION=4 ENTONCES RESULTADO<-NUMERO1/NUMERO2; FinSi SI OPCION<>5 ENTONCES Escribir RESULTADO; FinSi FinMientras FinProceso

EJERCICIO DE MENS - HORARIO DE CLASES SEGN EL DA HACER UN ALGORITMO QUE DESPLIEGUE UN MEN CON LOS DAS DE LA SEMANA, Y SEGN EL DA ELEGIDO POR EL USUARIO, EL PROGRAMA MOSTRARA EL HORARIO DE CLASES DE ESE DA. NOTA: SI EL USUARIO ELIGE EL DA DOMINGO EL PROGRAMA DEBER FINALIZAR O SALIR.

COLEGIO ALBERT EINSTEIN

(2x)

4x

(5

2 )

25

12

2do Secundaria

1 8
SEMA NA

Computacin

Procesos
Aprendizajes Esperados
Aprender a resolver utilizando pseudocdigos y su codificacin en un lenguaje de programacin de alto nivel

Un proceso no tiene porqu estar siempre en ejecucin. Puede pasar por diferentes estados: Preparado: Un proceso preparado es un proceso que est preparado para ejecutarse. Slo le falta la CPU En Ejecucin: Un proceso en ejecucin es un proceso que tiene CPU, se est ejecutando

Algoritmo que lea dos nmeros y nos diga cual de ellos es mayor o bien si son iguales (recuerda usar la estructura condicional SI) Proceso ejercicio_3 Escribir "Introduce el primer numero" Leer numero1 Escribir "Introduce el segundo numero" Leer numero2 //comparamos los dos numeros, //si el primero es mayor o igual que el segundo entra Si (numero1>=numero2) Entonces //Si el numero1 y numero2 son iguales entra y escribe que son iguales //Sino lo son escribe que el numero1 es el mayor Si (numero1=numero2) Entonces escribir "los numeros " numero1 " " numero2 " son iguales" Sino Escribir numero1 " es el mayor de los dos" FinSi //Si el primer Si es falso, escribe que el numero2 es mayor Sino Escribir numero2 " es el mayor de los dos" FinSi FinProceso

Bloqueado: Un proceso bloqueado est esperando que ocurra un suceso antes de poder usar la CPU. Dicho suceso suele ser una operacin de Entrada / Salida: pulsar una tecla, leer de disco... Pero tambin puede ser que est esperando a que otro proceso haga algo 1. Creacin del proceso. Est preparado para ejecutarse 2. El proceso se ejecuta en CPU 3. El proceso espera a que ocurra un suceso y se bloquea 4. Ocurre el suceso por el que esperaba el proceso. Est preparado para ejecutarse 5. El proceso sale de la CPU 6. Fin de la ejecucin del proceso

COLEGIO ALBERT EINSTEIN

13

(2x)

4x

(5

2 )

25

Procesos Un proceso es la ejecucin de un programa, es decir, los datos e instrucciones estn cargados en la memoria principal, ejecutndose o esperando a hacerlo.

Ejercicios de Aplicacin

2do Secundaria

Computacin

Algoritmo que lea tres nmeros distintos y nos diga cual de ellos es el mayor (recuerda usar la estructura condicional Si y los operadores lgicos). Proceso ejercicio_4 Escribir Introduce el primer numero Leer numero1 Escribir Introduce el segundo numero Leer numero2 Escribir Introduce el tercer numero Leer numero3 //comparamos el numero1 con el numero2 y numero3 //Si las dos condiciones son verdaderas el numero1 es el mayor Si (numero1>numero2 Y numero1>numero3) Entonces Escribir el numero numero1 es el mayor //si el numero1 no es el mayor, //comparamos el numero2 con el numero3 Sino Si (numero2>numero3) Entonces Escribir El numero numero2 es el mayor Sino Escribir El numero numero3 es el mayor FinSi FinSi FinProceso Teniendo en cuenta que la clave es eureka, escribir un algoritmo que nos pida una clave. Solo tenemos 3 intentos para acertar, si fallamos los 3 intentos nos mostrara un mensaje indicndonos que hemos agotado esos 3 intentos. (Recomiendo utilizar un interruptor). Si acertamos la clave, saldremos directamente del programa. contador<-0 //interruptor acierto<-Falso //usamos un interruptor, cuando acertemos, //cambiara y la condicion sera falsa Mientras (contador<3 Y acierto=falso) Hacer //ponemos aqui leer porque con las variables //iniciales entra en el bucle Escribir introduce la clave Leer clave si (clave=eureka) Entonces Escribir la clave es correcta //el interruptor cambia cuando acertamos acierto<-Verdadero FinSi contador<-contador+1 FinMientras //este mensaje solo aparecera si hemos agotado //todos los intentos y no hemos acertado si (contador=3 Y acierto=falso) Entonces Escribir Ya no tienes mas intentos FinSi

Leer tres nmeros que denoten una fecha (da, mes, ao). Comprobar que es una fecha vlida. Si no es vlida escribir un mensaje de error. Si es vlida escribir la fecha cambiando el nmero del mes por su nombre. Ej. si se introduce 1 2 2006, se deber imprimir 1 de febrero de 2006. El ao debe ser mayor que 0. (Recuerda la estructura segun sea). NOTA: en PSeInt, si queremos escribir sin que haya saltos de linea, al final de la operacion escribir escribimos sin saltar. Proceso ejercicio_ Escribir Introduce el dia Leer dia Escribir Introduce el mes Leer mes Escribir Introduce el ao Leer ao //comprobamos que la fecha es correcto si ((dia<=31 y dia>=0) y (mes<=12 y mes>=0) y ao>0) Entonces Escribir dia sin saltar //usamos el segun sea para escribir el mes Segun mes Hacer 1: escribir de enero de sin saltar 2: escribir de febrero de sin saltar 3: escribir de marzo de sin saltar 4: escribir de abril de sin saltar 5: escribir de mayo de sin saltar 6: escribir de junio de sin saltar 7: escribir de julio de sin saltar 8: escribir de agosto de sin saltar 9: escribir de septiembre de sin saltar 10: escribir de octubre de sin saltar 11: escribir de noviembre de sin saltar 12: escribir de diciembre de sin saltar FinSegun Escribir ao Sino Escribir error FinSi FinProceso

COLEGIO ALBERT EINSTEIN

14

2do Secundaria

1 9
SEMA NA

Computacin

Estructuras
Aprendizajes Esperados
Realizar programas usando pseudocdigos

Diagrama de Flujo y Pseodocdigp Enunciado: realizar un programa que al ingresar un nmero del 1 al 7, indique qu da de la semana es, siendo 1=lunes. 2=martes, 3=mircoles, 4=jueves, 5=vienres, 6=sbado y 7=domingo.

Diagrama de Flujo y Pseodocdigp Enunciado: Realizar un programa que al ingresar una letra, indique si es consonante o vocal.
COLEGIO ALBERT EINSTEIN

15

2do Secundaria

Computacin

COLEGIO ALBERT EINSTEIN

16

Anda mungkin juga menyukai