3.298 cursos gratis
6.267.101 alumnos
Publica tu curso gratis
Busca cursos gratis:
Estás aquí: mailxmail > Cursos de Informática > Programación > Algoritmos y lenguaje C > Bucles o estructuras repetitivas

Algoritmos y lenguaje C

Autor: abraham sopla
Curso:  4,68/5 4,68/5 (12 opiniones) |10889 alumnos|Fecha publicación: 13/01/2006

Capítulo 11:

 Bucles o estructuras repetitivas

5.3.1 BUCLE for

Ejercicio 16

Hacer el algoritmo para un programa, que calcule la máxima área de un terreno rectangular  de lados 100-2x y x respectivamente, para valores de x entre 10 y 30.

Algoritmo
Inicio
Declare x, area
        Desde x=10 hasta  x<=30 hacer
  Area=100-2*x
  Imprimir x, area
 Fin Desde
Fin

Variable
X : asume valores desde 10 hasta 30.
Area : asume el valor del área.

Programa
#include<stdio.h>
main(void)
{int x;
        for(x=10; x<=30;x++)
  printf("%d unidades, para x=%d \n",x*(100-2*x),x);
}

NOTA: El mayor valor de área es 1250 para un valor de x =25

Ejercicio 17

Hacer el algoritmo para un programa que calcule el mayor y el menor número de 8 números ingresados por el teclado.

Algoritmo
Inicio
Declare num, mayor, menor, x;
 mayor:0;
 menor:10000;
 Desde x=1 hasta x<=8 hacer
  leer num
  si mayor<num entonces mayor:num;
  si menor>num entonces menor:num;
 Fin Desde
 Imprimir mayor, menor
Fin

Variables

num  : guarda un número ingresado
mayor : Para asignarle el valor del mayor de los números leídos.
menor : Para asignarle el valor del menor de los números leídos
x  : Permite contar los 8 ingresos (valores desde 1 hasta 8).

Programa
#include<stdio.h>
main(void)
{int num,mayor,menor,x;
 mayor=0;
  menor=10000;
 for(x=1; x<=8;x++)
 { printf("INGRESAR NÚMERO %d\n",x);
  scanf("%d",&num);
  if(mayor<num) mayor=num;
  if(menor>num) menor=num;
 }
 printf("NÚMERO MAYOR: %d MENOR: %d \n",mayor,menor);
return 0;
}

Ejercicio 18

Hacer el algoritmo para el ejercicio  16, para encontrar  solamente el valor de la mayor área e imprimir el valor de x para el esta área máxima.

Algoritmo
Inicio
Declare area, x, maxarea, maxx
        maxarea:0;
        Desde x=10 hasta x<=30 hacer
               
  area:x*(100-2*x);
  si maxarea<area entonces
   maxarea:area;
   maxx:x
  Fin si
 Fin Desde
  imprimir maxarea, maxx
Fin

Variables
area  : Valor del area
x  : valor de x.
maxarea : valor de la máxima área.
maxx  : valor delmáximo valor de x.

Programa
#include<stdio.h>
main(void)
{int area, x;
int maxarea,maxx;
        maxarea=0;
        for(x=10; x<=30;x++)
                {
  area=x*(100-2*x);
  if(maxarea<area)
   {maxarea=area;
   maxx=x;}
  }
  printf("área máxima %d unidades, para x=%d \n",maxarea,maxx);
}
NOTA: En este caso la mayor área es 1250, para x=25.

Ejercicio 19

Escríbase  el algoritmo para un programa en el que se pide al usuario ingresar el nombre, sexo, número de horas de trabajo y el sueldo por hora para cada uno de seis empleados. La primera parte de la impresión en el papel debe dar el nombre y el pago para cada empleado. La segunda parte debe dar totales separados y pagos promedios separados para hombres y para mujeres. El programa puede suponer que hay al menos un empleado de cada sexo.

Ejemplo:
NOMBRE SEXO *NHT PAGO POR H TOTAL
A M 50 5 250
E F 60 4 240
I M 70 6 420
O F 50 6 300
U F 50 10 500
E M 70 7 490
*Número de horas trabajadas

SEXO PROM TOTAL
H 386,6667 1160
F 346,6667 1040

Algoritmo
Inicio
Declare x, pht, nht, sexo, ptt, sumasm, sumasf, sm, sf, nombre
sumasm:0;
sumasf:0;
sm:0;
sf:0;
Desde x=1 hasta x<=6 hacer
       leer sexo
       si sexo=1entonces
        sm:sm+1;
leer nombre,nht, pht
 ptt:nht*pht;
        imprimir nombre, ptt
        sumasm:sumasm+ptt
       else
 sf:sf+1;
        leer nombre, nht, pht
        ptt:nht*pht;
        imprimir nombre, ptt
        sumasf:sumasf+ptt
       fin si
Fin Desde
Imprimir sumasm, sumasm/sm
Imprimir sumasf, sumasf/sf
Fin

Variables
x  : asume valores de 1 hasta 6.
pht  : pago por hora trabajada.
nht  : número de horas trabajadas.
sexo  : sexo.
ptt  : pago total.
sumasm : suma de pagos de las hombres.
sumasf : suma de pagos de las mujeres.
sm  : número de hombres cuyos datos se ingresaron.
sf  : número de mujeres cuyos datos se ingresaron.
nombre : nombre de los trabajadores.

Programa
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int x,pht,nht,sexo,ptt,sumasm,sumasf;
float sm,sf;
main(void)
{char nombre[20];
       sumasm=0;
       sumasf=0;
       sm=0;
       sf=0;
       for(x=1; x<=6;x++)
       {printf("ingrese sexo 1 varon,     2 mujer\n ");
       scanf("%d",&sexo);
       if(sexo==1)
        {sm=sm+1;
        printf("ingrese nombre \n ");
       scanf("%s",&nombre);
        printf("ingrese nro de horas trabajadas \n");
        scanf("%d",&nht);
        printf("ingrese pago por hora trabajada\n");
        scanf("%d",&pht);
        ptt=nht*pht;
        printf("%s GANA %d SOLES \n\n",nombre,ptt);
        sumasm=sumasm+ptt;}
       else
  {sf=sf+1;
        printf("ingrese nombre \n ");
        scanf("%s",&nombre);
        printf("ingrese nro de horas trabajadas \n");
        scanf("%d",&nht);
        printf("ingrese pago por hora trabajada\n");
        scanf("%d",&pht);
        ptt=nht*pht;
        printf("%s GANA %d SOLES \n\n",nombre,ptt);
        sumasf=sumasf+ptt;}
         }
       printf("los HOMBRES GANAN TOTAL: %d SOLES, PROMEDIO: %f \n",sumasm,sumasm/sm);
       printf("las MUJERES GANAN TOTAL: %d SOLES, PROMEDIO: %f",sumasf,sumasf/sf);
}

Ejercicio 20

Escriba  el algoritmo para un programa que imprima la suma de 15 elementos de la serie: 1/2 +3/4 +7/8 +15/16...

Algoritmo
Inicio
Declare a, c, suma;
a:1
suma:0.5
Desde c=1 hasta c<15 hacer
 a:a*2+1
 suma:suma+(a/(a+1))
fin Desde
imprimir suma
Fin
NOTA: Tenga en cuenta el bucle es de 14 repeticiones por que suma se inicializa en 0.5.

Variables
a  : Asume los valores de los numeradores.
c  : Indica las 14 repeticiones.
suma  : Acumula el valor de la suma.

Programa
#include<stdio.h>
main(void)
{float a,c,suma;
a=1;
suma=0.5;
for(c=1;c<15;c++)
 {a=a*2+1;
 suma=suma+(a/(a+1));}
printf("%lf",suma);
}

Recibe nuestras novedades
Al presionar "Recibir" estás dándote de alta y aceptas las condiciones legales de mailxmail

Hay 12 opiniones. Opina sobre este curso.


Cursos similares a Algoritmos y lenguaje C


Cursos Valoración Alumnos Vídeo
Creación de un microrobot
Este es un robot muy sencillo pensado para aquellos que se quieren iniciar en el mundo de la microbótica. La estructura mecánica está realizada con piezas de Lego y como ... [25/02/05]
5/5 8.057  
Programación estructurada (primera parte)
Aprende, en el mundo de la informática, la programación estructurada: en qué consiste y cuál es su justificación. Analizaremos la visión clásica de la programación estruc... [16/10/08]
4/5 1.390  
PHP y MySQL. Aplicaciones Web: HTML II (tercera parte)
Programación de aplicaciones Web con PHP y MySQL. Ahora continuaremos con el estudio de las páginas Web HTML. Estudiaremos las listas en HTML. ... [02/12/08]
5/5 711  


Publicar en   del.icio.us    digg    meneame

¿Qué es mailxmail.com?|ISSN: 1699-4914|Recomiéndanos|Ayuda
Condiciones legales de mailxmail