Logo Studenta

Funciones y Algoritmos

¡Estudia con miles de materiales!

Vista previa del material en texto

Ruben Rivera / 8-1003-856
1. Para el siguiente algoritmo llene los espacios en blanco.
real calcularA ( entero radio) {
real area;
area = 3.141516 * radio**2;
retornar ____calcularA______; }
real calcularP ( entero radio) {
___retonar__ 2*3.141516*radio; }
Algoritmo Circulo {
entero r;
real perímetro,area;
// BLOQUE DE INSTRUCCIONES
imprimir (“Lea el radio solo trabaja con números positivos”);
leer ( r );
mientras (r<=0) {
imprimir (“El radio no puede ser negativo”);
leer ( r ); }
area = __calcularA__ ( r );
perimetro = calcularP ( r );
imprimir (“Area: “, área);
imprimir (“Perimetro: “, perímetro);
}
Cómo se llama la función _calcularA , calcularP__, cuántos parámetros
actuales/formales maneja __2 y 2___ mencione los parámetros
actuales____(r) , (r)____ y los formales _(entero radio) y (entero radio)__.
Cuántos valores retorna la función ___1 y 1____ y de qué tipo de datos es
___real(flotante)____.
r que es del algoritmo principal. __el radio del circulo___. ¿Qué tarea realizan las
funciones? ___calcular el area y el perimetro del circulo___
Que ciclo de repetición se utiliza: ___mientras con valor centinela____Cuántas veces puede iterar si la variable de control es 0 y
luego 4, __1___, cómo se llama la variable de
control de este ciclo __r___ .
Que valores se imprimen en este algoritmo:_area y su perimetro sus valores tomando 4 como r serian (area = 50.2642 y
perimetro = 25.1321 )______
2. Escriba una función que determine si un carácter es o no una vocal. Cuál de
las siguientes funciones dan la respuesta correcta y porque.
a). caracter determinarV( caracter car) {
si(car==’a’ O car==’e’ O car==’i’ O car==’o’ O car == ‘u’)
retornar “ES UNA VOCAL”;
de otro modo (car==’A’ O car==’E’ O car==’I’ O car==’O’ O car == ‘U’)
retornar “ES UNA VOCAL”;
de otro modo retornar “NO ES UNA VOCAL”; }
b). cadena determinarV( caracter car) {
si(car==’a’ O car==’e’ O car==’i’ O car==’o’ O car == ‘u’)
retornar “ES UNA VOCAL”;
de otro modo (car==’A’ O car==’E’ O car==’I’ O car==’O’ O car == ‘U’)
retornar “ES UNA VOCAL”;
de otro modo retornar “NO ES UNA VOCAL”; }
c). entero determinarV( caracter car) {
si(car==’a’ O car==’e’ O car==’i’ O car==’o’ O car == ‘u’)
retornar “ES UNA VOCAL”;
de otro modo (car==’A’ O car==’E’ O car==’I’ O car==’O’ O car == ‘U’)
retornar “ES UNA VOCAL”;
de otro modo retornar “NO ES UNA VOCAL”; }
ES LA A PORQUE LA COMILLAS SIMPLES SOLO SE PUEDE UTILIZAR CON CARÁCTER.
3. En la siguiente función responda las preguntas que se le hacen: Realice un algoritmo
para determinar qué cantidad de dinero hay en un monedero, considerando que se
tienen monedas de diez, 25 y 50, Utilice una funcion para realizar el proceso
flotante calcularD( flotante moneda, flotante totDinero) {
totDinero=totDinero +moneda;
retornar totDinero;}
Algoritmo Dinero {
flotante mone,totD=0.00;
cadena resp= “si”;
mientras (resp == “si”) {
imprimir (“que moneda hay en el bolso”);
leer(mone);
Ruben Rivera / 8-1003-856
mientras (mone !=0.10 Y mone !=0.25 Y mone != 0.50){
imprimir (“Esa denominación no se maneja aquí”);
leer(mone);}
totD= calcularD(mone, totD);
imprimir (“Hay mas monedas en el bolso si/no”);
leer (resp); }
si (totD >1.00)
imprimir (“En el bolso hay: ”, totD, “dólares”);
de otro modo
imprimir (“En el bolso hay: “ totD, “centésimos”);
}
RESPONDA LO SIGUIENTE:
1. Retorna valor la función SI ____ NO__X___, si su respuesta es SI qué tipo
de dato retorna _____
2. Maneja lista de parámetros formales y actuales SI_X__ NO_____. Si su
respuesta es SI, cuántos son: ___2_____, qué tipo de datos manejan:
___flotante__, cómo se llaman en la lista de parámetros formales :
______moneda, totDinero_____ y en la lista de parámetros actuales: _mone, totD_____.
3. Que variable se retorna ____totDinero_______.
4. Que sentencia llama a la función:__ calcularD___.
5. Escriba la sentencia completa que llama a la función : _ totD= calcularD(mone, totD);_
6. Haga la prueba de escritorio con los siguientes datos de prueba
mone=0.25,0.05,0.50,0.25,0.50,0.10
que se imprime:____________.
Funcion Dinero
N.
(Instrucción)
Memoria
(constantes y/o variables)
Unidad
(condiciones, evaluación de las operaciones,
otras)
Pantalla
(Entrada y/o
salida)
Observación
(instrucción, comentario o llamado a la
función con número)
Formales Actuales
F1 F2 A1 A2 aritmética lógica
Algoritmo Dinero
N.
(Instrucción)
Memoria
(constantes y/o variables)
Unidad
(condiciones, evaluación de las operaciones, otras)
Pantalla
(Entrada y/o
salida)
Observación
(instrucción,
comentario o llamado a
la función con número)c1 v1 v2 v3 aritmética lógica
mone totD resp se declaran las
variables
? ? ? se le asigna basura
0.00 se le asigna valor
Que moneda
hay en el
bolso?
se imprime un mensaje
Ruben Rivera / 8-1003-856
0.05 0.05 enter se le asigna valor a
mone
0.05 !=0.10 Y 0.05 !=0.25 Y
0.05 != 0.50
C
se verifica la condición
mientras, se cumple
Esa
denominació
n no se
maneja aquí
se imprime un mensaje
0.25 0.25 enter se le asigna valor a
mone
0.25 !=0.10 Y 0.25 !=0.25 Y
0.25 != 0.50
F
se verifica la condición
mientras, no se cumple
0.25 totD = calcularD (mone, totD)
totDinero (0.25)
se transfiere el control
a la función
Hay más
monedas en
el bolso?
si/no
se imprime un mensaje
si si enter
resp == “si”
“si” == “si”
C
se verifica la condicion
si, si cumple
que moneda
hay en el
bolso
se imprime un mensaje
0.50 0.50 enter se le asigna valor a
mone
0.50 !=0.10 Y 0.50!=0.25 Y
0.50 != 0.50
F
se verifica la condición
mientras, no se cumple
0.75 totD = calcularD (mone, totD)
totDinero(0.75)
se transfiere el control
a la función
Hay más
monedas en
el bolso?
si/no
se imprime un mensaje
si si enter se verifica la condicion
si, si cumple
resp == “si”
“si” == “si”
C
se verifica la condicion
si, si cumple
que moneda
hay en el
bolso?
se imprime un mensaje
0.25 0.25 enter se le asigna valor a
mone
0.25 !=0.10 Y 0.25 !=0.25 Y
0.25 != 0.50
F
se verifica la condición
mientras, no se cumple
1.00 totD = calcularD (mone, totD)
totDinero(1.00)
se transfiere el control
a la función
Hay más
monedas en
el bolso?
si/no
se imprime un mensaje
si si enter se verifica la condicion
si, si cumple
resp == “si”
“si” == “si”
C
se verifica la condicion
si, si cumple
que moneda
hay en el
bolso?
se imprime un mensaje
0.50 0.50 enter se le asigna valor a
mone
0.50 !=0.10 Y 0.50!=0.25 Y
0.50 != 0.50
F
se verifica la condición
mientras, no se cumple
1.50 totD = calcularD (mone, totD)
totD = 1.50
se transfiere el control
a la función
Hay más
monedas en
el bolso?
si/no
se imprime un mensaje
Ruben Rivera / 8-1003-856
si si enter se le asigna valor a
resp
resp == “si”
“si” == “si”
C
se verifica la condicion
si, si cumple
que moneda
hay en el
bolso?
se imprime un mensaje
0.10 0.10 enter se le asigna valor a
mone
0.10 !=0.10 Y 0.10!=0.25 Y
0.10 != 0.50
F
se verifica la condición
mientras, no se cumple
1.60 totD = calcularD (mone, totD)
totD = 1.60
se transfiere el control
a la función
Hay más
monedas en
el bolso?
si/no
se imprime un mensaje
no no enter se le asigna valor a
resp
resp == “si”
“si” == “si”
C
se verifica la condicion
si, si cumple
(totD > 1.00)
1.60 > 1.00
C
se verifica la condición
se cumple
En el bolso
hay 1.60
dólares
se imprime un mensaje

Continuar navegando

Otros materiales