Page 1


LOGICA COMPUTACIONAL Es aquella que nos ayuda a resolver ciertas acciones aplicando la computadora, dentro de ella encontramos con herramientas como: algoritmos, diagramas de flujo y pseudocódigos. Todos estos nos ayudan a aclarar el panorama de la resolución del problema.

¿Qué es un problema?

Cuestión o punto discutible que requiere de una solución


ETAPAS PARA RESOLVER UN PROBLEMA

ENTRADA DE DATOS ¿Qué DATOS TENGO? SALIDA DE DATOS

¿Cuál ES LA INCOGNIA?

MI RESULTADO

PROCESO DE DATOS ¿Qué OPERACIONES DEBO REALIZAR PARA OBTENER MI RESULTADO?


Conjunto ordenado y finito de instrucciones que conduce a la solución de un problema

¿Qué ES UN ALGORITMO?

ENTRADA DE DATOS

PROCESO DE DATOS

ESTRUCTURA DE UN ALGORITMO

SALIDA DE DATOS


DIAGRAMA DE FLUJO

ALGORITMO

DIAGRAMA DE FLUJO

INICIO ENTRADA DE DATOS

ENTRADA DE DATOS

PROCESO SALIDA DE DATOS

ENTRADA DE DATOS

IMPRESORA PANTALLA FIN

Diagrama de flujo

HERRAMIENTA DE LA LOGICA COMPUTACIONAL QUE AYUDA A REPRESENTAR GRAFICAMENTE EL CONJUNTO DE INSTRUCCIONES ORDENADAS QUE LLEVAN A LA SOLUCION DEL PROBLEMA


1.-Juan es tres veces más grande que nacho, Nacho tiene la mitad de edad que Beto, José es 2 veces que la edad de Beto y Nacho juntos, si José tiene 60 años, ¿Cuántos años tiene Marta que es 2 años mayor que Nacho? Ju=3(n)

J=2(n+b)

N=10

N=b/2

J=2(30)

2n+2b=60

J=(n+b)2

J=60

2(10)+2(20)=60

J=60

N=b/2

20+40=60

M=n+2

N=20/2

60=60

2.-María tiene 4 años, su hermana marta tiene 3 veces su edad ¿Qué edad cumple marta cuando su edad sea el doble de la de María?

3.-Diseña un algoritmo para calcular el área y el perímetro de un cuadrado Pseudocódigo Inicio Datos de entrada Leer l A=l^2 P=4*l Datos de salida=a, p Fin


4.-Diseñe un algoritmo para calcular el área y perímetro de un rectángulo Pseudocódigo Inicio Datos de entrada=b,h A=b x h P=2b+2h Datos de salida =a,p Fin

5.-Encuentra 3 números que sumen 78, que el 1ro sea el doble del 2do y el 3ro 3unidades mayor que el 1ro 2x=1ro

X=75/5

X=2do

X=15

2x+3 =3ro

2x=30 2x+3=33

2x+x+2x+3=78

1ro=30

5x=78-3

2do=15

5x=75

3ro=33


6.- Diseñe un algoritmo que lea una medida en gb y los convierta en mb, kb y bytes Leer gb Procesos Xmb=(gb*1024)/1 X kb=(x mb*1024)/1 X by=(x kb*1024)/1 Imprimir xmb , xkb, xby

7.- Un niño y una niña iban caminando juntos, llevando unas deliciosas galletas, el niño llorando de llevar tantas galletas,la niña le dice-¿de qué te quejas? si yo tomara una galleta tendría el doble que tú,en cambio si te diera una llevaríamos lo mismo

8.-Diseña un algoritmo para convertir una longitud dada en metros a sus equivalentes en cm, pulgadas, pies,y yardas, consideré que 1m=100cm,1PULGADA=2.54cm ,1pie=12 pulgadas,1 yarda=3pies inicio DE metros Proceso Cm=metros x 100 Pulg=2.54*cm Pie=pulg*12 Yarda=pie*3


9.-Diseñen el algoritmo que lea el sueldo de 3 empleados y aplicarles el aumento del 10%,12%,15% respectivamente y da su salario final X2*0.12=Y2 X3*0.15=Y3 y1+x1=z1 y2+x2=z2 y3+x3=z3d D. salida z1, z2, z3 10.-Diseña un algoritmo que dada la hora actual en hrs, min, seg determinen cuantas hrs min y seg restan para culminar el día

EJEMPLOS DE DIAGRAMAS DE FLUJO 1.-PARA SABER Si un numero es positivo,negativo o nulo inicio leer a condicion a>0 si la condicion es verdadera “positivo” de lo contrario condicion a<0 si la condicion es verdadera”negativo” de lo contrario condicion a=0 Si la condicion es verdadera”nulo”


2.-Para determinar si un numero es positivo par Inicio Leer x Condicion x mod 2=0 and x >0 Si la condicione es verdadera”par positivo” De lo contrario”no me interesa”

3.-Para permitir el ingreso de 3 cifras y determine si es un numero capicua o no, si la cifra es menor a 999y menor a 100que mande un mensaje que ingreseuna cantidad de 3 digitos Inicio Leer x Condicion x>=100 and x<=999 Si la condicion es falsa “ingrese una cantidad de digitos” Si la condicion es verdadera Proceso c____trunc(x/100)


r______x mod 100 u_____r mod 10 condicion u=c si la condicion es verdadera”capicua” de lo contrario”no capicua”

4.- que valide una división de dos números, sabiendo que solo podrá realizar la división si el divisor es diferente a 0 Inicio Leer x, y Condición: y!=0 si la condición es verdadera Proceso R-x/y salida :r De lo contrario “no hay división” Fin 5.-para saber si un número es negativo Inicio Leer núm. Condición núm.<o Si la condición es verdadera”núm. negativo” Fin


6.-donde se ingresen las edades de Juan, Mario y Pedro y determine quién es contemporáneo con quien Inicio Leer: j, m, p Condicion=m and j=p and m=p Si la condición es verdadera “los 3” De lo contrario Condición j=p Si la condición es verdadera “Juan y Pedro” De lo contrario Condición m=p Si la condición es verdadera “Mario y Pedro” De lo contrario Condición j=m Si la condición es verdadera “Juan y Mario” De lo contrario “ninguno es contemporáneo” Fin

7.-Determina si es mayor o menor de edad Inicio Leer x Condicion x>=18 Si la condicion es verdadera “mayor de edad”


De lo contrario”menor de edad”

8.-determina al introducir 3 cantidades cual es mayor inicio Leer num1,num2,num3 Condicion num1>num2 and num1>num3 Si la condicion es verdadera”num1” De lo contrario Condicion num2>num1 and num2>num3 Si la condicion es verdadera “num2” De lo contrario “num 3” Fin

9.-dado un numero natural positivo calcular la suma de los numeros naturales hasta el numero introducido,siempre y cuando sea un numero de 1 a 100 Inicio Leer num Condicion num>=1 and num <=100 Si la condicion es verdadera I________1 S_______0 Mientras


I<=num S_______s+i I_______i+1 Fin mq Imprimir s De lo contrario â&#x20AC;&#x153;introducir un numero entre 1 y 100â&#x20AC;? Fin

10.-Que sume los numeros impares del 1 al 100 y que realice el cuadrado de los numeros pares Inicio Proceso I-1 S-0 Para I-1, 100, 1 Asignacion S-s+(i*i) Fin (para) Imprimir s Fin


11.- Determina qué tipo de tiro es de 3 dados, tomando en cuenta que Tres 6=excelente Dos 6 =bueno Un 6 =regular Ningún 6=malo Inicio Leer x,y,z Condición x+y+z=18 Si la condición es verdadera “tiro excelente” De lo contrario Condición x+y=12 or x+z=12 or z+y=12 Si la condición es verdadera “tiro bueno” De lo contrario Condición x=6 or y=6 or z=6 Si la condición es verdadera “tiro regular” De lo contrario”tiro malo” Fin

11.-Algoritmo que lea 3 longitudes y determine si forma un triangulo o no , si lo forma que determine de qué tipo de triangulo es: equilátero, escaleno, isósceles Inicio Leer l1, l2, l3


Proceso Condición l1=l2 and l2=l3 Si la condición es verdadera “equilátero” De lo contrario Condición l1>l2 and l1>l3 and l1<=l2+l3 Si la condición es verdadera Condición l2=l3 Si la condición es verdadera “isósceles” De lo contrario ”escaleno” De lo contrario Condición l2>l1 and l2>l3 and l2<=l1+l3 Si la condición es verdadera Condicion l1=l3 Si la condicion es verdadera “isósceles” De lo contrario “escaleno” De lo contrario Condicion l3>l1 and l3>l2 and l3<=l2+l1 Si la condicion es verdadera Condicion l2=l1 Si la condicion es verdadera “isósceles” De lo contrario ”escaleno” De lo contrario “no se puede formar un triangulo”


El inicio, se representa por un circulo que en su centro tiene la palabra inicio al dar doble clic sobre este, podemos agregar una breve descripci贸n del problema.


El icono de asignación de valores, se representa por un rectángulo al dar doble clic sobre esta forma, se abre un espacio para 3 asignaciones de variables u operaciones.

El icono de lectura está representado por un trapecio, el cual al dar doble clic se abrirá un cuadro de dialogo, que permitirá ingresar el valor de una variable o declarar la lectura de una variable.

El icono de impresión es representado por un cono con base circular cuya función es hacer la impresión de lo que tenga dentro en la pantalla del usuario ya sean cadenas de caracteres o la impresión de una variable.


El icono de fin es representado por un círculo pero a diferencia del icono de inicio este tiene en el centro la palabra fin.

Estructura de selección:

El icono de selección es representado por un rombo que tiene dos caminos, uno positivo y uno negativo, siempre y cuando se cumpla la condición este se ira por el camino de si, si no cumple la condición se ira por el camino de no y realizara las operaciones correspondientes de acuerdo al camino que toma. Estructura de repetición: Ciclo mientras o while y ciclo for o para.

El ciclo mientras es representado por un hexágono que al dar doble clic


sobre el se abre un cuadro de dialogo en el cual se debe ingresar la condición bajo la cual el ciclo se debe repetir si el usuario no ingresa datos que cumplan con la condición del ciclo mientras, este no se ejecutara.

El ciclo para o también conocido como el ciclo for es representado igualmente por un hexágono, con la diferencia de que este contiene la palabra para y al dar doble clic sobre este se abrirá un cuadro de dialogo en el cual tenemos que ingresar nombre del ciclo, numero de inicio, parámetro de finalización e incremento. Si el ciclo llega a su límite establecido este termina. Barra de herramientas de FreeDFD:

1.- Este icono sirve para crear un nuevo diagrama. 2.- Este icono sirve para abrir diagramas ya realizados anteriormente de acuerdo al directorio donde se encuentran. 3.- Función de guardar. 4.- Función de impresión. 5.- Cortar. 6.- Copiar. 7.- Pegar. 8.- Sirve para eliminar un bloque. 9.- Sirve para correr el diagrama. 10.- Sirve para detener la reproducción del diagrama.


11.- Sirve para pausar el diagrama una vez que este corriendo. 12.- Sirve para correr el diagrama paso por paso. 13.- Sirve para correr el programa hasta el punto o bloque que el usuario desee. 14.- Sirve para depurar el programa y corregir errores. 15.- Sirve para reducir el tamaño de la hoja. 16.- Sirve para aumentar el tamaño de la hoja. [Center]

Pseudocódigos=su objetivo es representar la solución de un algoritmo de la forma más detalladle y a su vez lo más parecido a su lenguaje de programación artificial Su estructura Ejemplo Pseudocódigo que sirve para calcular el área de un cuadrado

Cabecera

Programa=calcula _ área _cuadrado L, a as single Inicio Visualizar “introduce lado de cuadrado” Leer (l)


Cuerpo del programa

De esta manera podemos encontrar pseudocódigos orientados al lenguaje de programación como pascal, java, c++ CALCULADORA SUMA Comond 1_clickc) Dimi, suma As Intenger (Función que convierte carácter a su equivalente en número) I=Val (Text1.text) A=Val (Text2.text) (Nombre de propiedades del objeto) Suma=I +a Text. Text=suma

VARIABLES Es un dato cuyo valor puede variar a lo largo de su desarrollo en un algoritmo Sus características son 2=


*se le asigna un nombre de acuerdo a o que vamos a realizar *se le asigna el tipo que va a utilizar Ejemplos=x, y, z, nombre, edad, sexo, área, perímetro, etc. CONSTANTES Es un dato cuyo valor permanece sin cambios, constante a lo largo del desarrollo. Pi, yarda, pulgada, metro, pie TIPOS DE DATOS Numéricos: enteros y reales Caracteres: carácter y cadenas Booleanos: verdadero y falso Algoritmos de selección simple -Diseñe un algoritmo y diagrama de flujo para saber si un nº introducido por el usuario es negativo Si núm. <0 entonces Imprimir”numero negativo” Fin Realice un algoritmo y diagrama que valide una división de 2 numeros, sabiendo que solo se puede realizar si el divisor es diferente a 0 ALGORITMOS DE SELECCIÓN DOBLE Esta estructura permite elegir entre 2 opciones posibles si la condición es verdadera, si la condición es falsa ejecuta la opción falsa, por ejemplo Diseñe un algoritmo que determine si una persona es mayor o menor de edad al introducir su edad por el teclado. Ejemplo de sacar un núm. par positivo Inicio DE _leer núm. Proceso si nummod 2=0 and núm.>0 entonces


Imprimir “par positivo” Si no “no me interesa” de selección doble ESTRUCTURAS REPETITIVAS Estas estructuras repiten una secuencia de instrucciones, un determinado nº de veces, son también llamadas bucles o lazos, el nº de veces se le denomina interacciones *while (mientras) *for (para) *repeat (repetir) ESTRUCTURA WHILE Ejecuta un bloque de instrucciones mientras la condición se evalué como verdadera y siempre se evalúa antes de ejecutar el bloque de instrucciones en caso de que la condición evalué la 1ra vez como falsa el bloque de instrucciones no será ejecutado, por lo que quiere decir el nº de instrucciones es igual a 0, en caso contrario la condición evaluara como verdadero y se repetirá el bloque de instrucciones ESTRUCTURA REPEAT Esta se ejecuta hasta que se cumpla una condición determinada que se comprueba hasta el final del bucle. Se ejecuta al menos1 vez .El bucle repetir-hasta que-,se repite mientras el valor de la condición sea falsa, justo la opuesta de la sentencia mientras.

progamacion(diseño)  

diseñop de programas

Advertisement