650 likes | 880 Views
CAPITULO #3: “ESTUDIO DE ALGORITMOS”. fin. inicio. Programa. asignación. lectura. Conjunto instrucciones = resultados. variables y constantes. escritura. //Pseudocódigo en PSeInt Proceso sin_titulo edad <-0; anoNac <-0; anoAct <-0; Leer anoNac ; FinProceso.
E N D
fin • inicio Programa • asignación • lectura • Conjunto instrucciones = resultados • variables y constantes • escritura //Pseudocódigo en PSeInt Proceso sin_titulo edad <-0; anoNac <-0; anoAct <-0; Leer anoNac ; FinProceso Dim edad, anoNac, anoActAs Integer anoNac = Console.ReadLine() Const anoAct As Integer = 2009 ConstPI As Double = 3.1416
fin • inicio Programa • asignación • lectura • Conjunto instrucciones = resultados • escritura • operadores Aritméticos ^, *, /, div, \, mod, +, -, & Relacionales =, <>, <, >, <=, >= Lógicos no (not), y (and), o (or)
fin • inicio Programa • asignación • lectura • Conjunto instrucciones = resultados • escritura • expresiones o tras func. Expresiones (5 > 10) o (‘A’ < ‘B’) (10 > 5) y (5 < 10+Num) Otras funciones abs(x), arctan(x), sqr(x)
Estructuras SECUENCIALES comienzo lectura asignación escritura fin
Estructuras de SELECCIÓN comienzo lectura NO SI condición asignación escritura fin
Estructuras REPETITIVAS NO condición acciones SI SI condición acciones NO i = 1 NO acciones i <= 50 SI NO condición proceso i = i +1 SI
Programación Estructurada • Secuenciales
Estructuras SECUENCIALES //Pseudocódigo en PSeInt ProcesoSumarDosNumeros intNum1 <- 0; intNum2 <- 0; intSumatoria <- 0; Escribir"Deme dos numeros"; Leer intNum1, intNum2; intSumatoria <- intNum1 + intNum2; Escribir"La sumaes = ", intSumatoria; FinProceso comienzo lectura asignación escritura fin
Estructuras SECUENCIALES 'Codificado en Visual Basic Module SumarDosNumeros Public Sub Main() Dim intNum1, intNum2, intSumatoria As Integer Console.WriteLine("Deme dos numeros") intNum1 = Console.ReadLine() intNum2 = Console.ReadLine() intSumatoria = intNum1 + intNum2 Console.WriteLine("La sumaes = " & intSumatoria) Console.ReadLine() End Sub End Module comienzo lectura asignación escritura fin
Programación Estructurada • Selección
Estructuras de SELECCIÓN Pseudocódigo en español Si {expresion_logica} Entoces {acciones_por_verdadero} FinSi SI condición NO Sentencia(s) Pseudocódigo en ingles If {expresion_logica} Then {acciones_por_verdadero} EndIf
Estructuras de SELECCIÓN Pseudocódigo en español Si {expresion_logica} Entoces {acciones_por_verdadero} Sino {acciones_por_falso FinSi SI NO condición Sentencia(s) POR EL SI Sentencia(s) POR EL NO Pseudocódigoen Ingles If {expresion_logica} Then {acciones_por_verdadero} Else {acciones_por_falso} EndIf
Estructuras de SELECCIÓN comienzo lectura NO SI condición asignación escritura fin
Estructuras de SELECCIÓN comienzo lectura NO SI x Mod y asignación escritura fin
Estructuras de SELECCIÓN comienzo lectura NO SI (5 > 10) o (‘A’ < ‘B’) asignación escritura fin
Estructuras de SELECCIÓN comienzo lectura NO SI (10 > 5) y (5 < 10) asignación escritura fin
Estructuras de SELECCIÓN comienzo lectura NO SI cos (a) > 0 asignación escritura fin
Estructuras de SELECCIÓN comienzo lectura NO SI no (40 > 2) asignación escritura fin
Estructuras de SELECCIÓN //Pseudocódigo en PSeInt ProcesoModulo_MOD x<-0; z<-0; Escribir"Ingrese valores para X y Z"; Leerx,z; Si (x Mod z) = 0 Entonces Escribir x, " ES exactamente divisible para ", z; Sino Escribir x, " NO es exactamente divisible para ", z; FinSi FinProceso
Estructuras de SELECCIÓN 'Codificado en Visual Basic ModuleModulo_MOD Public Sub Main() Dim x, z As Integer x = 0 z = 0 Console.WriteLine("Ingrese valores para X y Z") x = Console.ReadLine z = Console.ReadLine If (x Mod z) = 0 Then Console.WriteLine(x & " ES exactamente divisible para " & z) Else Console.WriteLine(x & " NO es exactamente divisible para " & z) End If Console.ReadLine() End Sub End Module
Estructuras de decisión anidadas Pseudocódigo en ingles if {expresion_logica} then <acción(es) SI 1> else if {expresion_logica} then <acción(es) SI 2> else if {expresion_logica} then <acción(es) SI n+1> else …. endif . … endif V condición 1 Sentencia(s) 1 F V condición 2 Sentencia(s) 2 F V condición n Sentencia(s) N + 1 F Sentencia(s) N+1
Estructuras de decisión anidadas //Pseudocódigo en PSeInt ProcesoMayor_TresNum a<-0; b<-0; c<-0; mayor<-0; Escribir"Ingrese tres numero"; Leera,b,c; Sia>b Entonces Si a>c Entonces mayor<-a; Sino Si c>b Entonces mayor<-c; FinSi FinSi FinSi Escribir"El mayor es A = “,mayor; FinProceso
Estructuras de decisión anidadas 'Codificado en Visual Basic ModuleMayor_TresNum Public Sub Main() Dim a, b, c, mayor As Integer a = 0 b = 0 c = 0 mayor = 0 Console.WriteLine("Ingresetresnumero") a = Console.ReadLine() b = Console.ReadLine() c = Console.ReadLine() If a > b Then If a > c Then mayor = a Else Ifc > b Then mayor = c End If End If End If Console.WriteLine("El mayor es = " & mayor) Console.ReadLine() End Sub End Module
Estructuras de decisión múltiple Pseudocódigo en español Según_sea{variable_numerica} hacer {opcion_1}: {secuencia_de_acciones_1} {opcion_2}: {secuencia_de_acciones_2} {opcion_3}: {secuencia_de_acciones_3} De Otro Modo: {secuencia_de_acciones_dom} FinSegun condición 1 2 n Sentencia(s) S1 Sentencia(s) S2 Sentencia(s) Sn …
Estructuras de decisión múltiple Pseudocódigo en Ingles Select [ Case ] testexpressionCaseexpresión constante: <acción(es)> Caseexpresión constante: <acción(es)> Caseexpresión constante: <acción(es)> [Case Else] [<acción(es)>] ] End Select condición 1 2 n Sentencia(s) S1 Sentencia(s) S2 Sentencia(s) Sn …
Estructuras de decisión múltiple //Pseudocódigo en PSeInt Proceso Segun_ParesImpares Escribir"deme un número del 1 al 10"; Leernum; Segunnumhacer 2, 4, 6, 8, 10: Escribir"El número es PAR"; 1, 3, 5, 7, 9: Escribir"El número es IMPAR"; De Otro Modo: Escribir"Número fuera de rango de entre el 1 al 10"; FinSegun FinProceso
Estructuras de decisión múltiple 'Codificado en Visual Basic ModuleSegun_ParesImpares Public Sub Main() Dim num As Integer Console.WriteLine("deme un número del 1 al 10") num = Console.ReadLine SelectCasenum Case2, 4, 6, 8, 10 : Console.WriteLine("El número es PAR") Case 1, 3, 5, 7, 9 : Console.WriteLine("El número es IMPAR") CaseElse Console.WriteLine("Fuera de rango de 1 al 10") EndSelect Console.ReadLine() End Sub End Module
Programación Estructurada • Selección • Simples • If – Then – EndIf • Anidados • Dobles • If – Then- Else – EndIf • Múltiples • Select – Case – Case Else – EndSelect
Programación Estructurada • Repetitivas
Estructuras REPETITIVAS NO condición acciones SI SI condición acciones NO i = 1 NO acciones i <= 50 SI NO condición proceso i = i +1 SI
Estructuras REPETITIVAS Pseudocódigo en español Mientras {expresion_logica} Hacer {secuencia_de_acciones} FinMientras comienzo lectura NO condición Pseudocódigo en inglés While condition [ statements ] [ Exit While ] [ statements ] End While SI acciones fin • MIENTRAS - WHILE
Estructuras REPETITIVAS //Pseudocódigo en PSeInt ProcesoMientras_SumaPares intSumaPares <- 0; intContador <- 0; intPar <- 0; Mientras (intContador < 10) Hacer intPar <- intPar + 2; intContador <- intContador + 1; EscribirintContador, " Par = [",intPar, "]"; intSumaPares <- intSumaPares + intPar; FinMientras Escribir"Suma 10 primeros pares es ", intSumaPares; FinProceso
Estructuras REPETITIVAS 'Codificado en Visual Basic ModuleSegun_ParesImpares Public Sub Main() Console.WriteLine("ESTRUCTURA REPETITIVA WHILE") Dim intSumaPares, intContador, intPar As Integer intSumaPares = 0 intContador = 0 intPar = 0 While(intContador < 10) intPar = intPar + 2 intContador = intContador + 1 Console.WriteLine(intContador & " Par = [" & intPar & "]") intSumaPares = intSumaPares + intPar End While Console.WriteLine("Suma 10 primeros pares es " & _ intSumaPares) Console.ReadLine() End Sub End Module
Estructuras REPETITIVAS NO condición acciones SI SI condición acciones NO i = 1 NO acciones i <= 50 SI NO condición proceso i = i +1 SI
Estructuras REPETITIVAS Pseudocódigo en español Hacer <acción S1> … <acciónSn> Mientras<condición> comienzo lectura acciones SI Pseudocódigo en inglés Do [ statements ] [ Exit Do ] [ statements ] Loop { While } condition condición NO fin • HACER – MIENTRAS • DO - WHILE
Estructuras REPETITIVAS ‘Codificado en Visual Basic ModuleHacerMientras_SumaPares Public Sub Main() Console.WriteLine("ESTRUCTURA REPETITIVA “ & _ “HACER-MIENTRAS") Dim intPar, intContador, intSumaPares As IntegerintPar = 0 intContador = 0 intSumaPares = 0 Do intPar = intPar + 2 intContador = intContador + 1 Console.WriteLine(intContador & " Par = [" & intPar & "]") intSumaPares = intSumaPares + intPar Loop While(intContador < 10) Console.WriteLine("Suma 10 primeros pares es " & intSumaPares) End Sub End Module
Estructuras REPETITIVAS NO condición acciones SI SI condición acciones NO i = 1 NO acciones i <= 50 SI NO condición proceso i = i +1 SI
Estructuras REPETITIVAS Pseudocódigo en español Repetir {secuencia_de_acciones} HastaQue{expresion_logica} comienzo lectura acciones Pseudocódigo en inglés Do [ statements ] [ Exit Do ] [ statements ] Loop { Until } condition NO condición SI fin • REPETIR HASTA QUE • REPEAT
Estructuras REPETITIVAS //Pseudocódigo en PSeInt ProcesoRepetir_SumaPares intSumaPares <- 0; intContador <- 0; intPar <- 0; Repetir intPar <- intPar + 2; intContador <- intContador + 1; EscribirintContador, " Par = [",intPar, "]"; intSumaPares <- intSumaPares + intPar; Hasta Que (intContador >= 10) Escribir "Suma 10 primeros pares es ", intSumaPares; FinProceso
Estructuras REPETITIVAS 'Codificado en Visual Basic ModuleRepetir_SumaPares Public Sub Main() Console.WriteLine("ESTRUCTURA REPETITIVA " & _ "REPETIR HASTA-QUE") Dim intSumaPares, intContador, intPar As Integer intSumaPares = 0 intContador = 0 intPar = 0 Do intPar = intPar + 2 intContador = intContador + 1 Console.WriteLine(intContador & " Par = [" & intPar & "]") intSumaPares = intSumaPares + intPar Loop Until (intContador >= 10) Console.WriteLine("Suma 10 primeros pares es " & intSumaPares) Console.ReadLine() End Sub End Module
Estructuras REPETITIVAS NO condición acciones SI SI condición acciones NO i = 1 NO acciones i <= 50 SI NO condición proceso i = i +1 SI
Estructuras REPETITIVAS comienzo Pseudocódigo en español Para {variable_numerica}<-{valor_inicial} Hasta {valor_final} Con Paso {paso} Hacer {secuencia_de_acciones} FinPara lectura i = 1 F i <= 50 V Pseudocódigo en inglés For counter [ As datatype ] = start To end [ Step step ] [ statements ] [ Exit For ] [ statements ] Next [ counter ] proceso i = i +1 fin • DESDE PARA • FOR
Estructuras REPETITIVAS DESDEcontador = 0 HASTA limite [incrementodecremento] HACER <acciones> FIN_DESDE For counter [ As datatype ] = 0 To end [ Stepstep ] [ statements ] [ Exit For ] [ statements ] Next [ counter ]
Estructuras REPETITIVAS //Pseudocódigo en PSeInt ProcesoPara_SumaPares intSumaPares <- 0; intContador <- 0; intPar <- 0; ParaintContador<-1 Hasta 10 Con Paso 1 Hacer intPar <- intPar + 2; intSumaPares <- intSumaPares + intPar; EscribirintContador, " Par = [",intPar, "]"; FinPara Escribir"Suma 10 primeros pares es ", intSumaPares; FinProceso
Estructuras REPETITIVAS 'Codificado en Visual Basic ModulePara_SumaPares Public Sub Main() Console.WriteLine("ESTRUCTURA REPETITIVA FOR") DimintSumaPares, intPar As Integer intSumaPares = 0 intPar = 0 ForintContadorAs Integer= 1 To 10 intPar = intPar + 2 Console.WriteLine(intContador & " Par = [" & intPar & "]") intSumaPares = intSumaPares + intPar Next Console.WriteLine("Suma 10 primeros pares es " & intSumaPares) Console.ReadLine() End Sub End Module