Descargar

Instrucción Switch y Estructuras de Iteración (página 2)

Enviado por Pablo Turmero


Partes: 1, 2
edu.red Práctica Realice un programa que pida al usuario una serie de números enteros no negativos utilizando un ciclo do…while. Una vez que el usuario introduzca un número negativo, el ciclo deberá terminar y el programa deberá imprimir el mayor, menor, y promedio de todos los números ingresados (excepto el último).

edu.red Ejercicios Elabore un programa que implemente el método de bisección para encontrar la raíz en el intervalo (0, 3) de la función

Elabore un programa que implemente la regla del trapecio para calcular la integral

Elabore un programa que elija un número aleatorio n entre 1 y 100 (usar funciones rand() y srand() de stdlib.h). El programa dará al usuario 5 oportunidades para adivinar el número: en cada oportunidad, el usuario ingresará su respuesta y el programa indicará si la respuesta es menor, mayor, o igual a n (en cuyo caso el usuario habrá ganado). Si después de 5 intentos el usuario no ha adivinado, entonces habrá perdido el juego.

edu.red Ejercicios Algoritmo de bisección: Dado el intervalo (a, b) y una función f(x) contínua en (a,b): Verificar que f(a) f(b) < 0. De lo contrario, no podemos asegurar que existe una raíz en el intervalo dado y el algoritmo debe terminar. Hacer r=a. Iterar hasta que r converja: Obtener una aproximación de la raíz r como r = (a+b) / 2 . Si f(a) f(r) < 0, entonces la raíz está en la mitad izquierda del intervalo. Por lo tanto, hacer b = r. En caso contrario, entonces la raíz está en la mitad derecha del intervalo. Por lo tanto, hacer a = r.

Regla del trapecio:

donde n es el número de segmentos y h = (b-a)/n.

edu.red La instrucción for La otra estructura en C/C++ para la realización de ciclos es proporcionada por la instrucción for, cuya sintaxis es:

for (inicializacion; condicion; incremento) { // bloque de instrucciones }

Donde inicializacion es una expresión que se ejecuta antes de iniciar el ciclo. El ciclo se ejecuta mientras la condicion sea verdadera, y en cada iteración (despues de ejecutar el bloque de instrucciones) se evalua la expresion incremento.

edu.red Equivalencia entre for y while Las siguientes estructuras son equivalentes:

for (inicializacion; condicion; incremento) { // bloque de instrucciones } inicializacion; while (condicion) { // bloque de instrucciones incremento; }

edu.red Ejemplo La instrucción for se usa típicamente para realizar ciclos controlados por contador, ya que permite ver todos los parámetros del ciclo en una sola línea:

int main() { int i, n, f = 1; cout << “Dame un numero entero: “; cin >> n; for (i = 1; i <= n; i++) { f = f * i; } cout << n << “! = “ << f << endl; }

edu.red Ciclos anidados En muchas aplicaciones se requiere utilizar dos o más ciclos anidados, de manera que un ciclo exterior no complete una iteración hasta que los ciclos interiores hayan finalizado.

Una manera de entender el funcionamiento de los ciclos anidados es comparándolos con el odómetro de un coche.

edu.red Ejemplo #include #include #include

using namespace std;

int main() { int i, j, k; int t0; for (i = 0; i < 10; i++) { for (j = 0; j < 10; j++) { for (k = 0; k < 10; k++) { cout << "r" << i << j << k; cout.flush(); t0 = time(0); while (t0 == time(0)) {} } } } return 0; }

edu.red Práctica Escriba un programa que, dado un número entero n, determine si n es primo o no. Sugerencia: verifique si n es divisible entre algún entero entre 2 y sqrt(n). Modifique el programa anterior para que pida al usuario un entero positivo N, y luego imprima los primeros N números primos.

Ejemplo: si el usuario ingresa 10, el programa debe imprimir: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29.

edu.red Ejercicios Elabore un programa que utilice uno o mas ciclos for para factorizar un número entero n (dado por el usuario) como el producto de números primos. Sugerencia: pruebe si n es divisible entre 2, 3, …, n; cuando lo sea, divida n entre el factor y repita la operación hasta que n sea 1.

Se define la función u(n) para n entero no negativo comodonde a es un entero, y puede mostrarse que para cualquier valor de a existe un entero Na tal que u(Na) = 1.Elabore un programa que pida al usuario el valor de a, y luego calcule e imprima todos los valores de u(n) desde n = 1 hasta n = Na. Elabore un programa que calcule e imprima el volumen bajo la superficie f(x,y) = x2 + y2 – r2, donde r2 está dado por el usuario, en el intervalo |x|<1, |y|<1. Para esto, divida el intervalo en una rejilla de n x n (donde n es dado por el usuario) y utilice integración por paralelepípedos rectangulares.

Modifique el programa anterior para que imprima una tabla de la integral de f(x,y) para valores enteros de r desde 1 hasta 20.

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente