Está en la página 1de 4

TRABAJO DE PROBLEMAS UTILIZANDO FUNCIONES Y PROCEDIMIENTOS

1. Hacer un algoritmo y el programa en C# que calcule el área de círculo y longitud de


circunferencia, el área lateral, el volumen de un cilindro. Utilizar un menú de
opciones (procedimientos) y las funciones que considere necesarias.

2. Hacer un algoritmo y el programa en C# que calcule el enésimo elemento de la serie


FIBONACII. 1, 1, 2, 3, 5, 8,13,... (el primero y segundo es 1, el tercero es 2, etc.

3. Hacer un algoritmo y el programa en C# que calcule el enésimo elemento de la serie:


4, 6, 10, 16, 26, 42,...

4. Hacer un algoritmo y el programa en C# que calcule el enésimo elemento de la serie:


1, 1, 2, 4, 7, 13, 24, 44,...

5. Hacer una función EsPrimo(), que determine si un numero n pasado como parámetro
es o no primo. Ejemplo: si el parámetro es 7 debe retornar true, y si el parámetro es
8 debe retornar false. Pruebe dicha función con los primeros 100 números naturales,
mostrando los primos y cuantos son.

6. Escriba una función MenoresPrimos () que muestre todos los números primos
menores a un número n pasado como parámetro. Utilice la función EsPrimo(), para
mostrar los primeros primos menores que un número entero mayor que cero
ingresado por teclado.

7. Hacer una función cuyo identificador (nombre de la función sea sumaDivisores() )


que calcule la suma de los divisores de un número. Ejemplo: si es el número 8, debe
calcular y retornar 1+2+4 + 8 = 15

Hacer una función sobrecargada con dos parámetros, que retorne como parámetro de
salida la cantidad de divisores que tiene. Para el ejemplo seria 4.

Hacer una segunda función sobrecargada que retorne como parámetro de salida los
valores divisores, separados por el carácter ; En el ejemplo retornaría 1;2;4;8

8. Dos números son amigos cuando uno de ellos es igual a la suma de todos los
divisores del otro excepto el mismo.
Ejemplo: los números

220 (1+2+4+5+10+11+20+22+44+55+110=284) y

284 (1+2+4+71+142=220) son amigos.

Se pide: Escribir un programa que permita el ingreso de dos números enteros mayores
que cero, pasados como parámetros a una función llamada sonAmigos(), retorne
como valor uno si lo son y cero si no lo son (o true o false), deberá usar otra función
llamada sumaDivisores, que permita retornar la suma de los divisores de un número
determinado, excepto el propio numero pasado como parámetro.
9. Desarrollar un programa que solicite las dimensiones de un rectángulo (base y altura)
y calcule mediante funciones: a) calArea (), el área de un rectángulo conocida su base
y su altura b) calPerimetro (), el perímetro de un rectángulo conocida su base y altura.
c) calDiagonal (), la diagonal de un rectángulo conocida la base y la altura. d)
calAngulo(), el ángulo entre la diagonal y la base conocida la base y la altura. Use un
menú Menu() de opciones, que incluya estas 4 opciones.
10. Hacer una función denominada esBisiesto() que determine si un año pasado
como parámetro es o no bisiesto, teniendo en cuenta que: "Un año es bisiesto
si es divisible por 400, o bien si es divisible por 4 pero no por 100". Pruebe dicha
función, y determine de los últimos 20 años cuales y cuantos han sido bisiestos.

11. Escriba un programa que permita el ingreso de una fecha determinada incluida en
este orden día, mes y año pasados como parámetros a una función llamada
esFechaCorrecta que retornará un valor lógico (true o false), en caso sea true se
mostrara un mensaje fecha correcta en caso contrario se mostrará fecha invalida.
Utilice dicha función para determinar si de 5 fechas ingresadas por teclado cuantas
son correctas.
12. Desarrollar una función elementoN() que halle el elemento enésimo de la serie: 1 2
4 8 16 32 64 128 ... para los valores n = 0, 1, 2, 3, 4, 5, 6, 7, 8, .... respectivamente.
Utilizar dicha función para calcular y mostrar los enésimos valores de la serie cuyas
posiciones (n) son ingresadas por teclado, hasta que el usuario ya no desee seguir.

13 Realizar una función de nombre Siguiente() de manera que, reciba como parámetro
un número primo mayor que uno, y retorne el número primo inmediatamente siguiente
y superior a dicho número primo. Por ejemplo, si se invoca Siguiente (7), la función
devolverá el número 11.
El programa solicitara un número entero mayor que cero y usara una función llamada
esPrimo que tiene como parámetro ese número y devolverá True si lo es, False en
caso contrario. En caso sea True, se invocará a la función Siguiente(). Repetir el
pedido hasta que el usuario lo decida.
14. Hacer una función validaNota() que valide una nota (entre 0 y 20) use paso de
parámetros por referencia. Pruebe la función.
15. Hacer una función promRedondeado() que reciba tres notas enteras y retorne el
promedio redondeado eliminando previamente la nota más baja. Debe probar dicha
función.
16. Hacer un programa que permita el ingreso de las 4 notas de práctica (máximo 20) que
conforman la evaluación continua de cada un alumno. Por alumno se pide los
siguientes datos: Nombre, practica1, practica2 y práctica3 y practica4
Se deberá crear una función llamada notaEvalContinua que reciba como parámetros
la prac1, prac2, prac3 y prac4. La función debe devolver como resultado el promedio
redondeado de las notas, eliminando previamente la más baja. Asimismo debe
devolver como parámetro de salida la nota más baja eliminada.
Debe usar también la función validaNota () para validar la entrada de las 4 notas de
cada alumno.
El programa mostrará un listado de las notas de evaluación continua indicando:
Nombres, las 4 notas, la nota eliminada y el Promedio de evaluación continua
redondeada habiendo eliminado la nota mas baja y un mensaje de “Felicitaciones” para
aquellos cuya tarea académica es >=16.
17. Definir una función para calcular el enésimo elemento de la serie FIBONACCI: 1, 1,
2, 3, 5, 8,13,.... Utilizar dicha función para calcular el enésimo elemento de la serie
Fibbonacci solicitado por el usuario. El programa procesará las solicitudes hasta que
el usuario decida no continuar.
18. En un experimento de cultivo de bacterias, el número de bacterias en un instante T
(en minutos) está dado por:
N(T) = N0 e0.1T
Siendo N0 el número de bacterias en el instante T=0
 Desarrolle una función con parámetros T y N0 que calcule el número de bacterias en
el instante T
 Empleando la función creada, mostrar el número de bacterias en los instantes T=3. 5,
7,9,...,21.
Nota: para calcular ex se usa la función exp.
19. Hacer una función que haga cálculos de un circulo de radio r, cálculos(). Esta función
utiliza los parámetros por valor r y los parámetros de salida LC longitud de la
Circunferencia y de retorno área del círculo. Utilice dicha función para calcular la
longitud de la circunferencia y área del círculo de radio ingresado por teclado, repetirlo
hasta que el usuario decida terminar.
20 Hacer una función Intercambio(,) que intercambie los valores enteros de dos variables
pasados como parámetros. Utilizar dicha función para intercambiar las edades de dos
amigos, cuyos datos nombre y edad son ingresados por teclado.
21. Desarrollar las siguientes funciones:
a) Un método que muestre un menú de opciones que permita seleccionar cambiar a
coordenadas polares y cambiar a coordenadas cartesianas
b) Un método que convierta de coordenadas cartesiana a coordenadas polares
c) un método que convierta de coordenadas polares a coordenadas cartesianas.
Utilizar dichas funciones para hacer las conversiones que considere necesarias hasta que
ya no desee continuar.
22. Hacer un problema libre.

Grupo 1: Velásquez – Carhuatoccto - Aquino 1 – 4- 7

Grupo 2: Bartolomé – López – Huamán 2 – 5 - 8

Grupo 3: Cayetano – Ochen – Tarazona 3 -6 -9

Grupo 4: Lara – La Madrid – Linares 10 – 13 - 16

Grupo 5: Campos – Meléndez - Chávez 11 – 14 -17


Grupo 6: Rios – Tarrillo - 12 – 15 - 18

Grupo 7: Refulio – Quispe - Rubio 19 -20-21

1 problema libre