Você está na página 1de 3

Trabajo I Unidad

Fecha de entrega Jueves 11/06/17


Recuerde que los cdigos fuente lo presentar en un CD e impreso en MS Word y de ser
posible se exponrda el viernes 12/05/2017
.

Escriba un programa en C++ que:

1. Codifica un programa que reciba 06 nmeros todos diferentes entre s y devuelve el


menor de los positivos y el mayor de los negativos, si no hay uno de ellos devolver 0
2. Muestre en pantalla los nmeros enteros del 1 a N (N es un nmero natural).

2.1 Muestre en pantalla los nmeros enteros del 1 a N (N es un nmero natural). de


3 en 3.
2.2.- Convertir una cantidad en metros a yardas, pies y pulgadas (y viceversa).
3.- Muestre en pantalla los nmeros enteros de N (N es un nmero natural mayor que 1).al 1.

4. Muestre en pantalla todos los mltiplos de 3 entre los nmeros 1 y N (N es un nmero


natural)..

5. Genere la siguiente serie: 5, 10, 15, 20, 25,30 El programa preguntar primero
cuantos trminos se quieren mostrar y despus mostrar la serie correspondiente.

6. Pida al usuario un nmero, y muestre el mensaje "has introducido el numero ---"


(mostrando el nmero que ha sido introducido). Esta accin debe repetirse hasta que el
usuario introduzca el nmero 0. En ese momento se mostrar el mensaje
"Finalizando: Se ha introducido el nmero 0". Adems, se debe mostrar cuntos
nmeros se han introducido y su suma.

7. P ida al usuario su nombre y contrasea y le de tres oportunidades para introducir los


datos correctos, que sern root y 4321. Si los datos introducidos son correctos se mostrar
por pantalla Bienvenido al sistema. En caso contrario se mostrar un mensaje por
pantalla indicando que se ha superado el nmero de intentos permitido.
Notas:
Puesto que las cadenas de caracteres finalizan con el carcter nulo (\0), usuario y
contrasea se declararn como cadenas de longitud 5 (char usuario[5]). Para leer
cualquiera de estas cadenas con la funcin scanf se usar el descriptor de formato %s y
dado que el nombre de la cadena ya es una direccin, ste no debe ir precedido del
smbolo &(scanf(%s, usuario)).
Para comparar cadenas se debe usar la funcin strcmp (string compare), por ejemplo
strcmp(usuario, "root"), que devolver un 0 si las cadenas son iguales y otro valor si
son distintas.

8. Eleve un nmero a una potencia, utilizando dos mtodos: a) utilizando la funcin


potencia y b) usando un bucle, sin recurrir al operador potencia. Nota: En C, para poder
usar la funcin potencia (pow(x, y)=xy) es necesario incluir la biblioteca math (#include
<math.h>).

9. Solicite 10 nmeros enteros positivos al usuario y calcule y muestre los siguientes

1
valores:
La suma de todos los nmeros ledos.
La media de los nmeros.
El mayor nmero introducido.
El menor nmero introducido.

10. Solicite nmeros al usuario hasta que se hayan introducido 10 nmeros o la suma
de todos los nmeros ledos sea mayor que 100. A continuacin mostrar un mensaje
indicando qu condicin se ha cumplido (es decir, si se han introducido 10 nmeros o si
su suma es mayor que 100).

11. Para adivinar un nmero entre 1 y 100 que previamente se ha definido como una
constante. El programa ir pidiendo nmeros al usuario y, siempre que dicho nmero
no coincida con el nmero secreto, le indicar si el nmero introducido es mayor o menor
que el nmero secreto que tiene que adivinar. Al final, el programa indicar la cantidad
de intentos que se han necesitado para adivinar el nmero. Si el nmero de intentos
es menor que 5 se mostrar Enhorabuena!. Si es un valor entre 5 y 10 se mostrar el
mensaje No est mal. Si el nmero de intentos es mayor que 10 se mostrar el mensaje
Debe practicar ms.

12. Modificar el ejercicio anterior para que el nmero mximo de intentos sea 5. Al
terminar el programa indicar si el usuario ha ganado (si ha adivinado el nmero en
menos de cinco intentos) o no.

13. Solicite al usuario nmeros positivos de tres o ms cifras y compruebe si son pares. Si
el nmero introducido es positivo pero de una o dos cifras, se solicitar un nuevo
nmero. El programa finaliza cuando se introduce 0 o un nmero negativo.

14. Permita calcular el importe de una factura, a partir de una serie de artculos vendidos.
Para ello, el programa ir preguntando para cada artculo la cantidad de unidades vendidas
y el precio unitario.
El programa comprobar que tanto el precio como la cantidad son nmeros positivos, y
en caso contrario volver a solicitar los valores.
La lectura de artculos acabar cuando se introduzca un 0 en la primera pregunta.
Entonces se imprimir por pantalla el importe total de la factura.
15. Escribir un programa en C que escriba los nmeros comprendidos entre 1 y 1000. El
programa escribir en la pantalla los nmeros en grupos de 20, solicitando al usuario si
quiere o no continuar visualizando el siguiente grupo de nmeros. Generalizar el
programa para que escriba los nmeros comprendidos entre dos valores que introduzca
el usuario, y sea ste tambin quien decida el tamao del grupo a visualizar por
pantalla.

16. Escriba un programa que lea nmeros por teclado hasta que se introduzca el cero. En
ese momento deber representar el nmero de introducciones efectuadas, y la mayor
secuencia de nmeros consecutivos iguales, indicando cul fue el nmero que se repiti
y cuntas veces seguidas apareci.
Ejemplo: Si se introduce 8 8 8 4 5 6 6 6 7 7 7 7 2 0, el resultado a mostrar ser. El nmero
ms repetido es el 7 y se ha escrito 4 veces.

17. Escriba un programa en C que solicite un nmero y calcule su factorial. El factorial de


un nmero n (representado por n!) es el producto de todos los nmeros naturales desde

2
1 hasta n.
n! = 1 * 2 * 3 * * (n-1) * n.

18. Escriba un programa que calcule la raz cuadrada de un nmero con n decimales, por el
Mtodo de aproximaciones sucesivas.

Nota: Mtodo de las aproximaciones sucesivas


Se basa en 'ensayo y error'. A este tipo de algoritmos se les llama de aproximaciones
sucesivas: se empieza por un valor inicial y se va modificando para acercarse al resultado.
En este caso se comienza suponiendo que la raz es 1. Se comprueba si raiz*raiz=num
y si no es as se suma un incremento, y se vuelve a comprobar. Se repiten estos pasos
hasta que raiz*raiz>num.
Para computar el valor con un nmero determinado de decimales se repiten esos pasos
con un incremento cada vez menor (la primera vuelta 1, la segunda 0,1, la tercera 0,01
En cada paso la precisin es un decimal ms, por lo que se repite hasta que el nmero
de decimales sea el introducido por el usuario, o hasta que se encuentre el valor exacto.

19. Se quiere averiguar el nmero mgico de una persona. Para calcularlo se suman
todos los nmeros de su fecha de nacimiento y a continuacin se reducen a un solo
dgito. Ejemplo:
Fecha de nacimiento: 05/02/1973
5 + 2 + 1973 = 1980 => 1 + 9 + 8 + 0 = 18 =>9

20.- Realice un programa que:


a) Solicite al usuario el ao, el mes y el da que componen su fecha de
nacimiento y compruebe que la fecha introducida es una fecha vlida. La fecha se
considerar vlida si: ao >0; 1<=mes<=12; 1<=dia<=DIAS_MES. Se considerar
que, con independencia del ao, el nmero de das del mes de Febrero es 28.
b) Calcule el nmero mgico asociado a esa fecha.
c) Muestre el nmero mgico por pantalla

Você também pode gostar