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 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 MenoresPrimos () que muestre todos los números primos menores a un número n pasado como parámetro. Utilice la función EsPrimo 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 de la función sea sumaDivisores 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: 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. 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 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, 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 u n 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 N 0 el número de bacterias en el instante T=0
Desarrolle una función con parámetros T y N 0 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 e x 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 1 problema libre
19 -20-21