Algoritmo

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 16

¿Cuál de las siguientes no es una ventaja de utilizar diagramas de flujo?

1. Proporciona una visualización clara del flujo de trabajo


2. Reduce la necesidad de documentación
3. Facilita la identificación de errores
4. Mejora la comprensión del proceso
¿Cuál de los siguientes operadores permite comparar dos valores?
a. Lógico
b. Aritmético
c. Relacional
d. Asignación
¿Cuál es la salida del siguiente código en JavaScript?
let x = 5;
let y = "5";
console.log(x == y);
console.log(x === y);
a. true, true
b. false, false
c. false, true
d. true, false
En JavaScript, ¿qué significa el valor NaN?
a. Un número no válido
b. Un valor indeterminado
c. Un número nulo
d. Un valor booleano falso
Si queremos que el usuario ingrese un número y verificar si es par o impar en PSeInt,
¿cuál es la condición adecuada para comprobar si es impar?
a. numero DIV 2 = 1
b. numero MOD 2 <> 0
c. numero MOD 2 = 1
d. numero DIV 2 <> 0
¿Qué saldrá en pantalla después de ejecutar el siguiente algoritmo en PSeInt si el usuario
ingresa 3?
Algoritmo ejemplo
Leer x
Para i <- 1 Hasta x Hacer
Si i MOD 2 = 0 Entonces
Escribir "Par: ", i
Sino
Escribir "Impar: ", i
FinSi
FinPara
FinAlgoritmo
a. Par: 2
b. Impar: 1, Par: 2, Impar: 3
c. Par: 2, Impar: 1, Impar: 3
d. Impar: 1, Impar: 3
¿Qué simboliza un paralelogramo en un diagrama de flujo?
a. Proceso
b. Decisión
c. Entrada/salida
d. Conector
¿Qué característica define a una sucesión aritmética?
a. La variación de color en representaciones gráficas.
b. El uso de operadores lógicos.
c. La diferencia constante entre términos consecutivos.
d. La aplicación de fórmulas exponenciales.
En el siguiente pseudocódigo de PSeInt, ¿cuántas veces se ejecutará la instrucción dentro
del ciclo Mientras?
Algoritmo ejemplo
contador <- 0
n <- 8
Mientras n > 1 Hacer
n <- n / 2
contador <- contador + 1
FinMientras
Escribir contador
FinAlgoritmo
a. 3
b. 4
c. 2
d. 5
Al utilizar un diagrama de flujo para un algoritmo complejo, ¿cuál es una estrategia efectiva?
a. Incluir comentarios extensos
b. Dividir el diagrama en subdiagramas
c. Limitar el número de decisiones
d. Usar solo un tipo de símbolo
¿Cuál es la salida del siguiente código en PSeInt si el usuario ingresa el valor 5?
Algoritmo ejemplo
Leer n
Escribir "El valor es ", n * 2
FinAlgoritmo
a. El valor es 10
b. El valor es 5
c. El valor es 7
d. Error de sintaxis
Dado el siguiente código, ¿qué se mostrará en la consola?
let arr = [1, 2, 3, 4];
let suma = 0;
for (let num of arr) {
suma += num;
if (suma > 5) break;
}
console.log(suma);
a. 10
b. 7
c. 6
d. 5
Analice a manera de entrada, proceso y salida el siguiente problema.
Se desea calcular el área de un trapecio, conociendo que su fórmula es (a+b)h/2 en donde a
y b son las longitudes de sus bases y h es la altura. Este análisis no requiere que aplique
una validación de datos.
Si es entrada, especifique por cada dato si es constante, variable, de qué tipo es (int, float,
etc.), si la captura por teclado o la define el usuario.
Si es proceso, especifique solo el cálculo y para la salida igual, solo el dato de salida
a. entradas: todos los datos son enteros, todas las ingresa el usuario base, altura procesos:
altura = a+b, total = base* altura/2
salida: total
b. entradas: los datos son integer son a, b, altura todas las ingresa el usuario, el area la
defino yo y es float
procesos: area= (a+b)*altura/2
salida: area
c. entradas: los datos son float son a. b, altura todas las ingresa el usuario, el area la defino
yo y es float
procesos: altura = a+b, total = base* altura/2
salida: total
d. entradas: los datos son integer son a. b, altura todas las ingresa el usuario, el area la
defino yo y es float
procesos: area= (a+b)*h/2
salida: área
e. entradas: variables float base1, base2, altura las ingresa el usuario
procesos: area = base * altura/2
salida: area
Escriba solo las líneas de código que permitan evaluar si el número que está almacenado
en la variable dato es impar.
a. valor = 5
si valor / 2
entonces escribir "El número es impar"
sino
escribir "El número es par"
fin si
b. si dato % 2 > 0
entonces escribir "El número es impar"
sino
escribir "El número es par"
fin si
c. valor = 5
si valor % 2 <> 0
entonces escribir "El número es impar"
sino
escribir "El número es par"
fin si
d. si dato % 2 <> 0
entonces escribir "El número es impar"
sino escribir "El número es par"
fin si
Qué realiza las siguientes líneas de código:
mientras valor < 1 o valor > 10 hacer
escribir "El valor debe estar entre 1 y 10, intente de nuevo"
leer valor
fin mientras
a. Evalúa si valor está entre 1 y 10
b. Valida el ingreso de un valor entre 1 y 10
c. Genera una secuencia definida por el usuario
d. Genera la captura de 10 números secuencialmente
Corrija el siguiente código para que genere la salida correcta que es una tabla de
multiplicar con dos datos que ingresa el usuario. Solo la respuesta completa que corrige
todos los errores es válida.
definir x, y, i como entero
escribir "Ingrese el valor de la tabla:"
leer x
leer y
i=1
mientras i >= y hacer
escribir x, " x ", i, " = ", x * y
i=i+1
fin mientras
a. Falta el escribir para y el while está mal definido porque no lleva el igual.
b. Falta el escribir para y el while va con menor o igual.
c. Falta el escribir para y el while va con menor o igual, y el producto en el while en x*i.
d. Falta el escribir para y el while va con menor o igual, y el escribir en el while presenta
en este orden: x, i, x*y.
Analice a manera de entrada, proceso y salida el siguiente problema.
Le solicitan hacer el cambio de monedas de euros a dólares, por un dólar americano se
reciben 0.90 euros. El programa debe solicitar al usuario la cantidad en dólares con los
que desea comprar euros para que se presente la cantidad de euros que recibiría.
Si es entrada, especifique por cada dato si es constante, variable, de qué tipo es (int, float,
etc.), si la captura por teclado o la define el usuario.
Si es proceso, especifique solo el cálculo y para la salida igual, solo el dato de salida
a. entradas: todos los datos son enteros, variables son euros, dólares, total_euros,
total_dolares, todas las ingresa el usuario
procesos: total = euros * dólares
salida: total_dolares
b. entradas: variables float son total_c, total. El usuario ingresa total_c, todas las demás
las defino yo en el programa
procesos: total = total_c * 0,90
salida: total
c. entradas: variables float son euros, total_c, total_dolares, todas las ingresa el usuario
procesos: total = euros * dólares
salida: total_dolares
d. entradas: todos los datos son enteros, variables son euros, dólares, total_euros,
total_dolares, todas las ingresa el usuario
procesos: total = euros * dólares
salida: total
recomendaciones
En programación, los operadores son símbolos o palabras reservadas que se utilizan para
realizar acciones como cálculos, comparaciones, asignaciones, entre otras. Son fundamentales
para construir expresiones y manipular datos en programas.
Algunos tipos de operadores son:
• Aritméticos
Se utilizan para calcular valores de números, o cambiar el signo de un número. Por ejemplo, +
suma dos números, - resta dos números, * multiplica dos números, / divide dos números.
• Comparación
Se utilizan para comparar valores y devolver un resultado True, False o Null. Por ejemplo, <
devuelve True si el primer valor es menor que el segundo valor.
• Lógicos
Se utilizan para combinar dos valores Booleanos y devolver un resultado verdadero, falso o
nulo. Por ejemplo, Y devuelve True cuando Expresión1 y Expresión2 son verdaderas.
• Concatenación
Se utilizan para combinar dos valores de texto en uno. Por ejemplo, & combina dos cadenas
para formar una.
• Asignación
Asigna un valor a su operando izquierdo basándose en el valor de su operando derecho. Por
ejemplo, el operador de asignación simple es igual ( = ).

1. console.log(x == y);
o El operador == compara los valores sin tener en cuenta el tipo de dato. En este
caso, x es un número (5) y y es una cadena ("5"), pero el operador == realiza
una conversión implícita y compara solo los valores. Ambos valores son 5, por
lo que la comparación es true.
2. console.log(x === y);
o El operador === compara tanto el valor como el tipo de dato. En este caso, x es
un número y y es una cadena. Dado que los tipos no son iguales, la
comparación es false.
Tipos numéricos enteros
En Java existen cuatro tipos destinados a almacenar números enteros. La única diferencia entre
ellos es el número de bytes usados para su almacenamiento y, en consecuencia, el rango de
valores que es posible representar con ellos. Todos ellos emplean una representación que
permite el almacenamiento de números negativos y positivos. El nombre y características de
estos tipos son los siguientes:
• byte: como su propio nombre denota, emplea un solo byte (8 bits) de almacenamiento.
Esto permite almacenar valores en el rango [-128, 127].
• short: usa el doble de almacenamiento que el anterior, lo cual hace posible representar
cualquier valor en el rango [-32.768, 32.767].
• int: emplea 4 bytes de almacenamiento y es el tipo de dato entero más empleado. El
rango de valores que puede representar va de -231 a 231-1.
• long: es el tipo entero de mayor tamaño, 8 bytes (64 bits), con un rango de valores
desde -263 a 263-1.
Tipos numéricos en punto flotante
Los tipos numéricos en punto flotante permiten representar números tanto muy grandes como
muy pequeños además de números decimales. Java dispone de 2 tipos concretos en esta
categoría:
• float: conocido como tipo de precisión simple, emplea un total de 32 bits. Con este tipo
de datos es posible representar números en el rango de 1.4x10 -45 a 3.4028235x1038.
• double: sigue un esquema de almacenamiento similar al anterior, pero usando 64 bits en
lugar de 32. Esto le permite representar valores en el rango de 4.9x10 -324 a
1.7976931348623157x10308.
PSEINT

Bucle o Cíclo Para

Es otra estructura de control repetitiva, pero en este caso la propia estructura inicializa una
variable que se va a usar de contador, además, va sumándole la cantidad paso y por último
incluye el valor final que debe tomar la variable para salir del bucle.

Formato de Para:

Para variable<-valor inicial Hasta valor final Con Paso incremento / decremento Hacer

Mientras

Permite crear un ciclo, que terminará cuando la condición no se cumpla


Desarrollo:
Debe existir previamente una variable que será utilizada en la condición

Para utilizar el comando, primero se debe escribir ‘Mientras’ seguido de la condición y luego la
palabra ‘Hacer’, ejemplo:

Mientras condición Hacer


Luego del ‘Hacer’, debe seguir la secuencia de acciones mientras la condición se cumpla, y al
final de estas cerrar el comando con ‘Fin Mientras

Arreglos

Los arreglos son estructura de datos homogéneas (todos los datos son del mismo tipo) que
permiten almacenar un determinado número de datos bajo un mismo identificador, para luego
referirse a los mismos utilizando uno o más subíndices. Los arreglos pueden pensarse como
vectores, matrices, etc.

Para crear un arreglo en PSeInt se utiliza la palabra clave Dimension, seguido del nombre del
arreglo (identificador) y su tamaño (número de subíndices) entre corchetes [ ].

Dimensión identificador [tamaño];

Según o Case

En PSeInt, se implementa mediante la estructura "Según" y se utiliza cuando necesitas elegir


una acción específica entre varias opciones posibles. Cada opción se conoce como un "caso", y
se ejecutará el bloque de código correspondiente al caso cuyo valor coincida con el valor de la
variable o expresión evaluada.
Según (variable_o_expresión) Hacer

Caso valor1:

// Código a ejecutar si la variable_o_expresión es igual a valor1

Caso valor2:

// Código a ejecutar si la variable_o_expresión es igual a valor2

...

Otro:

// Código a ejecutar si ninguna de las condiciones anteriores se cumple

FinSegún

Ejemplos
Algoritmo SeleccionMultiple
Definir diaSemana Como Entero
diaSemana <- 3

Según diaSemana Hacer


Caso 1:
Escribir "Hoy es lunes."
Caso 2:
Escribir "Hoy es martes."
Caso 3:
Escribir "Hoy es miércoles."
Caso 4:
Escribir "Hoy es jueves."
Caso 5:
Escribir "Hoy es viernes."
Caso 6:
Escribir "¡Es fin de semana!"
Otro:
Escribir "Número de día no válido."
FinSegún
FinAlgoritmo
Algoritmo ejemplo
definir vNumero Como Entero
definir R Como Entero
Limpiar Pantalla
Escribir ""
Escribir "tabla de multiplicar"
Escribir ""
Escribir "Qué número de tabla deseas ? " Sin Saltar
Leer vNumero
Escribir ""
Para R<-1 Hasta 10 Con Paso 1 Hacer
Escribir vNumero," * ",R," = ",vNumero*R
FinPara
Escribir ""
Escribir " para continuar ..."
Esperar Tecla
FinAlgoritmo

Algoritmo Algoritmodetarea
n=1
Mientras n <> 0 hacer
Escribir "Dame un numero"
leer n
si n < 0 entonces
negativo = negativo + 1
SiNo
positivo = positivo + n
FinSi
FinMientras
Escribir "El total de negativos es: ",negativo
Escribir "La suma de positivos es: ",positivo
FinAlgoritmo
Algoritmo ejemplo
definir M como entero
dimension vNumero[10]
Limpiar Pantalla
vNumero[1]<-20
vNumero[2]<-14
vNumero[3]<-8
vNumero[4]<-0
vNumero[5]<-5
vNumero[6]<-19
vNumero[7]<-4
vNumero[8]<-9
vNumero[9]<-34
vNumero[10]<-23
escribir ""
escribir "se asginaron los números ... "
escribir""
escribir "presione para continuar ..."
esperar tecla
limpiar pantalla
escribir ""
Para M<-1 hasta 10 con paso 1 Hacer
escribir "el elemento en la posición ",M," es ",vNumero[M]
FinPara
escribir ""
escribir "presione para continuar ..."
esperar tecla
limpiar pantalla

FinAlgoritmo
Estas son las diferencias de Let, Var y Const.
const: Nos permite declarar variables inmutables, ósea no se puede cambiar.
var y let: Nos permiten crear variables mutables que si se puede cambiar.
var: Nos permite definir variables al alcance de su función más cercana, ósea dentro de la
función. Y un detalle Tiene un valor por defecto de undefined.
let: Nos permite definir variables al alcance de su bloque más cercano, ósea de su estructura.
Otro detalle, se usa let para definir una variable que si tenga su valor por el programador.

Las diferencias entre las estructuras de control if, while, for y do while son:
• If
Se ejecuta una vez.
• While
Se ejecuta mientras una condición booleana se evalúa como verdadera. La condición se evalúa
antes de cada iteración.
• For
Se usa cuando se sabe o se puede saber cuántas veces se repetirá el ciclo.
• Do while
Se ejecuta al menos una vez y luego se evalúa la condición. La condición se evalúa después de
cada iteración.
En el caso de while y do while, la diferencia principal es que en while la condición se evalúa
antes de ejecutar el código, mientras que en do while el código se ejecuta al menos una vez y
luego se evalúa la condición.
Un ejemplo de uso de while es reintentar conectarse a una base de datos si falló al hacerlo. Un
ejemplo de uso de do while es conectarse a la base de datos, si falló, repetir hasta que me pueda
conectar.
Forma ANSI/ISO Nombre Forma Descripción
Línea de flujo Línea saliendo de un Muestra el orden de operación de los procesos.
símbolo y apuntando a Las flechas se agregan si el flujo no es el estándar
otro. de arriba hacia abajo, de izquierda a derecha.
Terminal óvalo Indica el inicio o fin de un programa o
subprocesos. Usualmente contienen la palabra
"Inicio" o "Fin", o alguna otra frase señalando el
inicio o fin de un proceso, como "presentar
consulta" o "recibir producto".
Proceso Rectángulo Representa un conjunto de operaciones que
cambiar el valor, forma o ubicación de datos.

Decisión Rombo Muestra una operación condicional que


determina cuál de los dos caminos tomará el
programa. La operación es comúnmente una
pregunta de sí/no o una prueba de
verdadero/falso
Entrada Paralelogramo Indica el proceso de hacer entrar datos4 en la
forma de ingresar datos.

Salida Hoja de papel impresa Indica el proceso de hacer salir datos, en la


forma de mostrar resultados.

Anotación Rectángulo abierto con Indica información adicional acerca de un


(Comentario) una línea (que puede ser paso en el programa.
punteada) conectándolo
con el símbolo
correspondiente del
diagrama de flujo.
Proceso Rectángulo con un doble Muestra, por su nombre, un proceso que ha
Predefinido lateral en cada lado. sido definido en otro lugar.

Conector de Pequeño círculo con una Pares de conectores etiquetados reemplazan


Página letra dentro. líneas largas o confusas en la página del
diagrama.
Conector Plato de "Home" Un conector etiqueta para usar cuando el
fuera de (béisbol) pentágono. objetivo es otra página.
página
➢ boolean — son un tipo de dato primitivo comúnmente usado en lenguajes de
programación. Por definición, un booleano tiene 2 posibles valores: true (verdadero) o
false (falso).
➢ null — sin valor_vacio.
➢ undefined : una variable declarada pero no se le ha dado un valor o no está declarada.
➢ number — enteros, flotantes, etc.
➢ string — una matriz de caracteres, es decir, palabras.
➢ symbol : un valor único que no es igual a ningún otro valor.
BOOLEAN

Este tipo de dato representa a una lógica y la cual solo puede almacenar un bit el cual indica
uno de dos valores, true o false.

• let booleanTestTrue = true; //true


• let boolenTestFalse = false; //false

NULL

El tipo de valor null representa a un valor nulo, inválido o inexistente.

• let nullTest = null; //null

UNDEFINED

Este tipo de dato representa a una variable a la que no se le ha definido ningún valor por lo que
tiene el valor undefined.

• let undefinedTest; //undefined

NUMBER

El tipo de valor number nos sirve para almacenar valores numéricos los cuales los usamos
principalmente para contar, hacer cálculos y comparaciones.
Cuenta con tres valores simbólicos los cuales son:
1. NaN (Not a number) es un valor que representa la ausencia de un valor numérico.
2. Number.MAX_VALUE (aprox. 1.79E+308)
3. Number.MIN_VALUE (aprox. 5e-324).
• let numberTest = 14; //14
• let decimalTest = 1.33; //1.33
STRING
Las variables de tipo de dato string almacenan cadenas de caracteres, letras o palabras y estas se
definen entre comillas simples.

• let stringTest = 'Esto es un string';


• let otherStringTest = 'Esto es otro string';
Operador Descripción Ejemplos que devuelven true
Igual (==) Devuelve true si los operandos son iguales. 3 == var1
"3" == var1
3 == '3'
No es igual (!=) Devuelve true si los operandos no son iguales. var1 != 4
var2 != "3"
Estrictamente Devuelve true si los operandos son iguales y del 3 === var1
igual (===) mismo tipo. Consulta también Object.is y similitud
en JS.
Desigualdad Devuelve true si los operandos son del mismo tipo var1 !== "3"
estricta (!==) pero no iguales, o son de diferente tipo. 3 !== '3'

Mayor que (>) Devuelve true si el operando izquierdo es mayor var2 > var1 "12" > 2
que el operando derecho.

Mayor o igual Devuelve true si el operando izquierdo es mayor o var2 >= var1 var1 >= 3
que (>=) igual que el operando derecho.

Menor que (<) Devuelve true si el operando izquierdo es menor var1 < var2
que el operando derecho. "2" < 12

Menor o igual (<=) Devuelve true si el operando izquierdo es menor o var1 <= var2 var2 <= 5
igual que el operando derecho.

Switch en Java
El condicional switch case es una estructura que evalúa más de un caso y se caracteriza por:
Selección de una opción entre varias. Switch recibe un “caso” y lo evalúa hasta encontrar el
caso que corresponda. Se puede usar la opción “default” para cuando no se encuentra el caso
dado.
Array
Los arrays son objetos similares a una lista cuyo prototipo proporciona métodos para efectuar
operaciones de recorrido y de mutación. Tanto la longitud como el tipo de los elementos de
un array son variables. Dado que la longitud de un array puede cambiar en cualquier momento,
y los datos se pueden almacenar en ubicaciones no contiguas, no hay garantía de que
los arrays de JavaScript sean densos; esto depende de cómo el programador elija usarlos. En
general estas características son cómodas, pero si, en su caso particular, no resultan deseables,
puede considerar el uso de arrays con tipo.

• let frutas = ["Manzana", "Banana"];


• console.log(frutas.length);

✓ let sequence = [1, 1, 2, 3, 5, 8, 13];


✓ for (var i = 0; i < sequence.length; i++) {
✓ console.log(sequence[i]);
✓ }
✓ myArray.push("Cardiff");
✓ myArray;
✓ myArray.push("Bradford", "Brighton");
✓ myArray;

let newLength = myArray.push("Bristol");


myArray;
newLength;

También podría gustarte