int while while else else int else else

Documentos relacionados
void int int for void int int for void int int for for void int int for int int

1. Que rellene un array con los 100 primeros números enteros y los muestre en pantalla en orden ascendente.

BUCLES ANIDADOS EN LENGUAJE C

Repetición. Ejercicio 3

Algoritmo, Estructuras y Programación I Ing. Marglorie Colina

#include<stdio.h> #include<conio.h> #include<stdlib.h> #include<iostream> using namespace std; main() int num, intentos, i; string password;

Titulo: Calculo de PI

PROBLEMAS DEL TEMA 5: Control de Flujo del Programa

UNAN- LEON SENTENCIA DE CONTROL DO WHILE. M.Sc. Ana María Salgado G.

#include <stdio.h> float cubica(float numero) { float cubica; cubica = numero * numero * numero; return cubica; }

Bucles anidados. M.Sc. Ana María Salgado G. UNAN - LEON 24/04/2012

1. Escriba el siguiente código, compílelo y ejecútelo. Obtiene el resultado esperado? Modifíquelo para que se comporte como debe:

Reales. Caracteres. Cadenas de Caracteres (String)

SESIÓN DE EJERCICIOS E1

Sentencia de control for

Guía práctica de estudio 08: Estructuras de selección

EQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO

TEMA 4. ESTRUCTURAS DE CONTROL

Trabajo Práctico 5 Estructura Repetitiva

Trabajo Práctico Nro. 1

for(i = 0; i <= 45; i+=5) { x = (i*3.1416)/180; printf( seno(%d) = %f\n,i,seno(x));

Introducción a los Computadores Estructuras de control repetitivas en C

Programación. Ejercicios Tema 3. Elementos Básicos del Lenguaje C

Sentencia de control for

EJERCICIOS DE TEORIA FUNDAMENTOS DE INFORMATICA

FUNDAMENTOS DE PROGRAMACIÓN TALLER No. 1 Profesor: Alvaro Ospina Sanjuan

A l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información 1º año

OBJETIVO III. APLICAR A LOS PROGRAMAS EN C LAS ESTRUCTURAS DE SELECCIÓN IF Y SWITCH ACTIVIDAD TEÓRICA.

Asignatura: Estructuras de Datos. Grado y Sección: 6to INF A-B. Docente: Ing. Yesika Medina

CI 2125, Computación I

EJERCICIOS ALGORITMOS

Resolución de problemas mediante algoritmos

Algoritmos y Estructura de datos:

SESIÓN DE EJERCICIOS E1

Guía práctica de estudio 09: Estructuras de repetición

Capítulo 4. Estructuras de control. Profra. Catalina Trevilla Román Profr. Armando Valera Paulino

Principal material bibliográfico utilizado

Si un número es múltiplo de otro, u dicho de forma, comprobar si un número es divisor de otro.

Lenguaje de programación

Es un lenguaje estructurado, tiene una abundante cantidad de operadores y tipos de datos.

Tipos de datos y Operadores Básicos

Funciones en Lenguaje C

Ejercicios Tema 6. Funciones

/* Programa C01.c. < Declaraci n de Variables > < Uso de Comentarios > < Uso Constante con nombre > < Uso printf() y formatos de salida >

PROBLEMAS DEL TEMA 7 SUBPROGRAMAS Y MODULARIDAD

UNIVERSIDAD CENTRAL. Facultad de Ingeniería. Algoritmos y programación Grupo 1.4. Taller No.3

Unidad I Tipos de Datos en C

PRÁCTICA INSTRUCCIONES DE SELECCIÓN. Objetivos

Introducción a los Computadores Estructuras de control selectivas en C

Estructuras de repetición

INICIACIÓN A LA PROGRAMACIÓN EN C

Ejercicios De Programación De C++ Algoritmos. Lenguaje De Programación C++:

Ejercicios aplicando estructuras de asignación.

ESTRUCTURAS DE REPETICIÓN AREA PROGRAMACIÓN 1

TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL.

Codificación en C. Como pasar de Pseudocódigo a C (con pequeños trucos de C++)

Actividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

Boletín de ejercicios de la asignatura de INFORMÁTICA para la realización de las prácticas de laboratorio. Ejercicios de Estructuras de Control

Operadores aritméticos

EJERCICIOS DE TEORÍA FUNDAMENTOS DE INFORMÁTICA

Programación. Test Autoevaluación Tema 3

Autoestudio 2: Variables y Operadores

Estructuras de Decisión Simples y Dobles

UNIVERSIDAD DE PAMPLONA - PROGRAMACION I

SENTENCIAS DE CONTROL (SENTENCIA switch)

Programación I. Ingeniería Técnica Informática. Ejercicios de los Temas 4, 5, 6 y 7

Programa Nacional de Formación en Sistemas e Informática

Algoritmos. Intro. Prof. Raquel Torres Peralta / Gerardo Sanchez S. Unison

Lenguaje C Funciones. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

[SENTENCIAS DE CONTROL FOR Y WHILE

INSTITUTO NACIONAL SUPERIOR DEL PROFESORADO TÉCNICO - TÉCNICO SUPERIOR EN INFORMÁTICA APLICADA - PROGRAMACIÓN I

Programación Estructurada

El lenguaje C. 1. Identificadores, constantes y variables

ARRAYS NUMÉRICOS: VECTORES Y MATRICES

Introducción rápida a la programación (estructurada ) con C++

5. ESTRUCTURAS DE REPETICIÓN

Tema 3. Estructuras de control y programación estructurada

Lenguaje de programación C. Introducción

Práctica 3: Vectores y matrices en C.

Gu ıa Departamento. Matem aticas U.V.

Programación En Lenguaje C

Programcaión Básica. Secuencias de Control y Repetición. Arturo Vega González.

Estructuras de Repetición (Hacer-Mientras)

Programación Estructurada

INTRODUCCIÓN AL LENGUAJE C

Lenguaje C Bucles, Condicionales, operadores y Algoritmos.

Tema 3: Multiplicación y división.

PROBLEMAS DEL TEMA 7: Subprogramas y Modularidad

Repaso de lenguaje C. Índice. Repaso de lenguaje C. Repaso de lenguaje C: Tipos básicos

WHILE Y DO WHILE BREAK EN LENGUAJE C. BUCLES MIENTRAS. FORZAR SALIDA O TERMINACIÓN. EJEMPLO (CU00534F)

Cadenas de caracteres

A) B) C) 5 D) 5 9 E) A) 0 B) 9 9 C) D) E) no está definido 6. ( ) : 4 ( ) 0 A) B) 5 C) 8 D) 9 E) 0 7. Si n Z, entonc

Propiedades de números enteros (lista de problemas para examen)

Transcripción:

******************************************************** PROGRAMACION APLICADA A LA INGENIERIA CIVIL OOCC GUIA Nº2 Ayudante: Rodrigo Torres Aguirre/2009 Compilador utilizado:dev-c++ version 4.9.9.2 ******************************************************** 1-Dado como entrada dos números enteros, positivos y distintos: a y b, determine si el mayor es múltiplo del menor. Indicación: considere usar operadores para división entera (/ en C/C++) y para resto de división entera (% en C/C++). int a,b; printf("ingrese el Numero a:"); scanf("%d",&a); while(a<=0){ printf("numero ingresado es Incorrecto.\n"); printf("ingrese el Numero Nuevamente (mayor que cero): "); scanf("%d", &a); printf("\ningrese el Numero b:"); scanf("%d",&b); while(b<=0){ printf("numero ingresado es Incorrecto.\n"); printf("ingrese el Numero Nuevamente (mayor que cero): "); scanf("%d",&b); if(a%b==0){ printf("%d es multiplo de %d",a,b); else if(a%b==1){ printf("%d no es multiplo de %d",a,b); if(b%a==0){ printf("%d es multiplo de %d",b,a); else if(b%a==1){ printf("%d no es multiplo de %d",b,a); 2-Dado como entrada cuatro valores enteros: a, b, c, y d, genere como salida todas las relaciones de igualdad. Esto puede ser "todos son iguales", "son iguales a y b", "son iguales a, b y c", etc. int a,b,c,d; printf("ingrese el numero a:"); scanf("%d",&a); printf("ingrese el numero b:"); scanf("%d",&b); printf("ingrese el numero c:"); scanf("%d",&c); printf("ingrese el numero d:"); scanf("%d",&d); if(a==b){printf("\ta son iguales b\n"); else{printf("\ta son distintos b\n"); if(a==c){printf("\ta son iguales c\n"); else{printf("\ta son distintos b\n"); if(a==d){printf("\ta son iguales d\n");

else{printf("\ta son distintos d\n"); if(b==c){printf("\tb son iguales c\n"); else{printf("\tb son distintos c\n"); if(b==d){printf("\tb son iguales d\n"); else{printf("\tb son distintos d\n"); if(d==c){printf("\td son iguales c\n"); else{printf("\td son distintos c\n"); if(a==b && b==c){printf("\ta,b,c son iguales\n"); if(a==c && c==d){printf("\ta,c,d son iguales\n"); if(a==b && a==d){printf("\ta,b,d son iguales\n"); if(b==c && c==d){printf("\tb,c,d son iguales\n"); if(a==b && b==c && c==d){printf("\ttodos son iguales"); 3-Construya un algoritmo que reciba como entrada un cierto valor n, y genere como salida n veces la palabra "hola". int n,i; printf("ingrese el valor de n:"); printf("\t%d-hola\n",i); 4-Construya un algoritmo que reciba como entrada un cierto valor n y genere como salida el valor de la serie: 1*2 + 2*3 + 3*4 + 4*5 + +(n-1)*n+n*(n+1) int n,suma,i,a; printf("ingrese el numero n:"); suma=0; a=i*(i+1); suma=suma+a; printf("el resultado de la suma es:%d",suma); 5-Construya un algoritmo que reciba como entrada dos valores: a y b, donde a < b. Este algoritmo debe generar como salida los múltiplos de a que son menores que b. int a,b,i,k; printf("ingrese a:"); scanf("%d",&a); printf("ingrese b:"); scanf("%d",&b); if(a<b){ printf("los multiplos de a son:\n");

while(i<b){ if(a%i==0){ printf("\n\t%d",i); else{ printf("\ningrese a y b, de tal forma que a<b"); 6-Construya un algoritmo que reciba como entrada una secuencia de valores numéricos y genere como salida la suma de los valores pares y la multiplicación de los impares. Considere que un valor negativo significa que no hay más datos y no debe ser considerado como dato válido. int n,i,dato,pares,multiplicados; printf("ingrese el numero de valores:"); pares=0; multiplicados=1; printf("valor:"); scanf("%d",&dato); if(dato%2==0){ pares=pares+dato; if(dato%2==1){ multiplicados=multiplicados*dato; printf("la suma de los pares es:%d\n",pares); printf("la multiplicacion de los impares es:%d",multiplicados); 7-Construya un algoritmo que genere como salida los términos de la siguiente serie: 2, 5, 7, 10, 12, 15, 17,,1800. int i,pares,impares; printf("los terminos de la serie son:\n"); i=0; while(i<=359){ pares=5*i+2; impares=5*i+5; printf("-%d-%d",pares,impares);

8-Construya un algoritmo que genere los términos de la siguiente serie, y además calcule su valor para un n dado: 1-1/2+1/3-1/4+1/5-...+1/n float suma,n,i; printf("ingrese la cantidad de terminos:"); scanf("%f",&n); suma=0; suma=suma+pow((double)-1,(double)i+1)*(1/i); i++; printf("el resultado es:%f",suma); 9-Construya un algoritmo que reciba como entrada un valor n y calcule una aproximación del valor de e, como la suma de la siguiente serie: 1+1/2!+1/3!+1/4!+1/5!+...+1/n! int n,i; float suma,den; printf("ingrese el valor de n:"); suma=0; den=1; den=den*i; suma=suma+1/den; printf("una aproximacion del numero e es:%f",suma); 10-El valor de e^x se puede aproximar por la suma: 1+(x/1!)+(x^2/2!)+(x^3/3!)+(x^4/4!)+...+(x^n/n!) Escriba un algoritmo que tome valores para x y n como entrada y visualice la suma para los valores proporcionados desde teclado. int n,i,x; float suma,pot,f; printf("ingrese el valor n:"); printf("ingrese el valor x:"); scanf("%d",&x); pot=1; suma=1; f=1; f=f*i; pot=pot*x; suma=suma+pot/f;

printf("la suma de e^x es:%f",suma); 11-Escriba un algoritmo que permita imprimir el resultado de la siguiente suma: Sn(a,b) = 1/a + 1/(a + b) + 1/(a +2b) + 1/ (a + 3b)+. +1/ (a + nb),en donde a, b y n se ingresan por teclado. int n,i,a,b; float suma,den; printf("ingrese a:");scanf("%d",&a); printf("ingrese b:");scanf("%d",&b); printf("ingrese n:"); i=0; suma=0; den=a+i*b; suma=suma+(1/den); printf("el resultado de la suma es Sn(%d,%d)=%f",a,b,suma); 12-Se tiene una tabla con los datos de matrícula, peso, estatura y sexo de los alumnos de la USACH. Construya un algoritmo que reciba los datos de la tabla antes mencionada, calcule y genere como salida el promedio de los pesos y de las estaturas. Su algoritmo debe entregar estos valores considerando todos los individuos y también diferenciando por sexo. Considere el fin de datos de matrícula con el valor cero (0). int n,i,sexo,matricula,canthombres,cantmujeres;//a=1(hombre) a=0(mujer) float prompesohombres,prompesomujeres,peso,altura,hombres,estaturah, mujeres,estaturam,x,y,promediopeso,promedioaltura; printf("ingrese el numero de alumnos:"); hombres=0; estaturah=0; mujeres=0; estaturam=0; canthombres=0; cantmujeres=0; printf("\nmatricula:");scanf("%d",&matricula); printf("sexo (hombre=1,mujer=0):");scanf("%d",&sexo); if(matricula>0){ if(sexo==1){ printf("peso:");scanf("%f",&peso); printf("altura:");scanf("%f",&altura); hombres=hombres+peso; estaturah=estaturah+altura; canthombres=canthombres+1; else{ printf("peso:");scanf("%f",&peso); printf("altura:");scanf("%f",&altura); mujeres=mujeres+peso; estaturam=estaturam+altura; cantmujeres=cantmujeres+1;

prompesohombres=hombres/canthombres; prompesomujeres=mujeres/cantmujeres; X=estaturaH/cantHombres; Y=estaturaM/cantMujeres; promediopeso=(hombres+mujeres)/(canthombres+cantmujeres); promedioaltura=(estaturah+estaturam)/(canthombres+cantmujeres); printf("\nel promedio de peso entre hombres:%f",prompesohombres); printf("\nel promedio de peso entre mujeres:%f",prompesomujeres); printf("\nel promedio de altura entre hombres:%f",x); printf("\nel promedio de altura entre mujeres:%f",y); printf("\nel promedio total del peso de los alumnos:%f",promediopeso); printf("\nel promedio total de la altura de los alumnos:%f",promedioaltura); 13-Dado como entrada un fecha expresada en: día (1 al 31), mes (1,12) y año (en número), genere como salida la fecha del día siguiente. Indicación: considere meses de 31 días enero, marzo, mayo, julio, agosto, octubre, diciembre, y todos los restantes de 30 días, salvo febrero que siempre tendría 28. int dia,mes,ano,nuevodia,nuevomes,nuevoano; printf("***ingrese la Fecha***\n"); printf("lista de los meses del año:\n"); printf("\t1-enero\n \t2-febrero\n \t3-marzo\n \t4-abril\n \t5-mayo\n"); printf("\t6-junio\n \t7-julio\n \t8-agosto\n \t9-septiembre\n"); printf("\t10-octubre\n \t11-noviembre\n \t12-diciembre\n"); printf("\n-ingrese el mes (entre 1 y 12):"); scanf("%d", &mes); //Se puede ingresar desde el mes 1 al 12, en el caso contrario //debera ingresarse el mes nuevamente while(mes<1 mes>12){ printf("\nmes ingresado incorrecto.\n"); printf("ingrese el mes nuevamente: "); scanf("%d", &mes); //Mes de Enero, Marzo, Mayo, Julio, Agosto, Octubre y Diciembre if(mes==1 mes==3 mes==5 mes==7 mes==8 mes==10 mes==12){ printf("\n-ingrese el dia: ");scanf("%d", &dia); //Se pueden ingresar numeros desde el 1 hasta la indicacion en el //enunciado del problema while(dia < 1 dia>31){ printf("dia ingresado incorrecto.\n"); printf("ingrese el dia nuevamente: ");scanf("%d", &dia); printf("\n-ingrese el ano: ");scanf("%d", &ano); if(dia<31 && mes!=12){ nuevodia=dia+1; nuevomes=mes; else if(dia==31 && mes!=12){ nuevodia=1; nuevomes=mes+1; else if(dia==31 && mes==12){ nuevodia=1;

nuevomes=1; nuevoano=ano+1; //Mes de Abril, Junio, Septiembre y Noviembre if(mes==4 mes==6 mes==9 mes==11){ printf("\n-ingrese el dia: ");scanf("%d", &dia); while(dia < 1 dia>30){ printf("dia ingresado incorrecto.\n"); printf("ingrese el dia nuevamente: ");scanf("%d", &dia); printf("\n-ingrese el ano: ");scanf("%d", &ano); if(dia<30){ nuevodia=dia+1; nuevomes=mes; else if(dia==30){ nuevodia=1; nuevomes=mes+1; //Mes de Febrero if(mes==2){ printf("\n-ingrese el dia: ");scanf("%d", &dia); while(dia < 1 dia>28){ printf("dia ingresado incorrecto.\n"); printf("ingrese el dia nuevamente: ");scanf("%d", &dia); printf("\n-ingrese el ano: ");scanf("%d", &ano); if(dia<28){ nuevodia=dia+1; nuevomes=mes; else if(dia==28){ nuevodia=1; nuevomes=mes+1; //RESULTADOS printf("\n\n-la fecha es: %d/%d/%d\n",dia,mes,ano); printf("-la fecha del dia siguiente es:%d/%d/%d\n",nuevodia,nuevomes,nuevoano); 14-Se dice que todos los números que se pueden generar a partir de la fórmula 4n + 3 son primos. Construya un programa que genere los 100 primeros números de la serie dada por la fórmula anterior y en cada caso determine si es que efectivamente el número es primo. La comprobación la puede hacer determinando si el número tiene o no divisores. #define n 100 int i,j,cont,p; for(i=0;i<n;i++){ p=(4*i)+3; cont=0; for(j=1;j<=p;j++){ if(p%j==0){ cont=cont+1;

if(cont==2){ printf("\n%d) El numero %d es Primo",i+1,p); 15-Se dice que un número es perfecto si la suma de los divisores del número es igual al número. Escriba un programa que determine si un número ingresado como entrada a un programa es perfecto o no. Por ejemplo 6 y 28 son números perfectos.[los numeros perfectos estan dados por:(2^(n-1))*((2^n)-1)] int i,n,sum=0; printf("ingrese un numero:"); printf("los multiplos de a son:\n"); for(i<n;i++){ if(n%i==0){ printf("%d ",i); sum=sum+i; if(n==sum){ printf("\n\nel numero %d es perfecto",n); else{ printf("\n\nel numero %d NO es perfecto",n); 16-Escriba otro programa que determine los números perfectos que existen en un rango de 1 a n, donde n es una entrada del programa. int i,j,n,sum; printf("ingrese el numero Limite Superior del Rango:"); for(i<=n;i++){ sum=0; for(j=1;j<i;j++){ if(i%j==0){ sum=sum+j; if(i==sum){ printf("\n\nel numero %d es perfecto",i);

17-Se dice que un número es deficiente si no alcanza a ser perfecto. En este caso, si la suma de los divisores del número es menor que el número. En el sentido contrario, se dice que un número es abundante si la suma de sus divisores lo sobrepasa. Construya un programa que para un rango de 1 a n, siendo n una entrada del programa, determine si el número es deficiente, perfecto o abundante. Indique además el total de cada uno de ellos en ese rango. int i,j,n,sum,perfectos=0,abundantes=0,deficientes=0; printf("ingrese el numero Limite Superior del rango:"); for(i<=n;i++){ sum=0; for(j=1;j<i;j++){ if(i%j==0){ sum=sum+j; if(i==sum){ printf("\nel numero %d es Perfecto",i); perfectos++; else if(i>sum){ printf("\nel numero %d es Deficiente",i); deficientes++; else if(i<sum){ printf("\nel numero %d es Abundante",i); abundantes++; printf("\n\n"); printf("\nla cantidad de numeros Perfectos son:%d",perfectos); printf("\nla cantidad de numeros Deficientes son:%d",deficientes); printf("\nla cantidad de numeros Abundantes son:%d",abundantes); 18-Se dice que dos números son primos gemelos si ambos son primos y están separados por una distancia de 2. Por ejemplo, primos gemelos conocidos son: 3 y 5; 5 y 7; 11 y 13; 17 y 19, etc. Construya un programa que dado dos números n1 y n2 indique si son primos gemelos o no. int i,n1,n2,cont; printf("ingrese el primer numero:");scanf("%d", &n1); printf("ingrese el segundo numero:");scanf("%d", &n2); cont=0; for(i<=n1;i++){ if(n1%i==0){ cont=cont+1; if(cont==2){ printf("\nel numero %d es Primo",n1); cont=0; for(i<=n2;i++){ if(n2%i==0){

cont=cont+1; if(cont==2){ printf("\nel numero %d es Primo",n2); if(n1+2==n2 n2+2==n1){ printf("\nlos numeros son primos gemelos"); else{ printf("\nlos numeros No son primos gemelos"); 19-Construya un programa que dado un rango de 1 a n, siendo n una entrada del programa, determine los primos gemelos que se encuentren en ese rango. int i,j,n,cont1,cont2; printf("ingrese el numero Limite Superior del Rango:"); printf("\nlos numeros son primos gemelos entre 1 y %d son:\n",n); for(i<=n;i++){ cont1=0; for(j=1;j<=i;j++){ if(i%j==0){ cont1=cont1+1; cont2=0; for(j=1;j<=(i-2);j++){ if((i-2)%j==0){ cont2=cont2+1; if(cont1==2 && cont2==2){ printf("\nel numero %d es Primo",i-2); printf("\nel numero %d es Primo",i); printf("\nlos numeros son primos gemelos"); printf("\n\n"); 20-Se dice que dos números son amigos si la suma de los divisores de uno dan como resultado el valor del otro y viceversa. Construya un programa que determine si dos números n1 y n2 ingresados por teclado son amigos. //Un ejemplo de numeros amigos son el numero 220 y 284. //Los divisores de 220 son 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 y 110, que //suman 284. //Los divisores de 284 son 1, 2, 4, 71 y 142, que suman 220. int i,j,n1,n2,sum1,sum2; printf("ingrese el primer numero:");scanf("%d", &n1); printf("ingrese el segundo numero:");scanf("%d", &n2); sum1=0; printf("\nlos multiplos de %d son:",n1); for(i<n1;i++){

if(n1%i==0){ printf("%d ",i); sum1=sum1+i; sum2=0; printf("\nlos multiplos de %d son:",n2); for(j=1;j<n2;j++){ if(n2%j==0){ printf("%d ",j); sum2=sum2+j; if(n1==sum2 && n2==sum1){ printf("\n\nlos numeros %d y %d son amigos",n1,n2); else{ printf("\n\nlos numeros %d y %d NO son amigos",n1,n2);