0% encontró este documento útil (0 votos)
101 vistas18 páginas

Algoritmo y Código del Ciclo For

Este documento presenta un programa repetitivo que lee un valor N e itera N veces calculando Y = -2X^2 + 50 para cada valor de X leído. Explica el algoritmo, diagrama de flujo y código en C para resolver el problema. También presenta variaciones del programa que calculan sumas, productos y condiciones de parada alternas usando ciclos for.

Cargado por

Jessica
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
101 vistas18 páginas

Algoritmo y Código del Ciclo For

Este documento presenta un programa repetitivo que lee un valor N e itera N veces calculando Y = -2X^2 + 50 para cada valor de X leído. Explica el algoritmo, diagrama de flujo y código en C para resolver el problema. También presenta variaciones del programa que calculan sumas, productos y condiciones de parada alternas usando ciclos for.

Cargado por

Jessica
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

PROGRAMA REPETITIVO:

PROBLEMA 4.- Construya un programa que lea N valores de X y calcule para cada valor leído
Y= -2X2 +50. Como salida se deben imprimir los valores de X y Y.

Datos de Proceso TERMINACIÓN Datos de salida


entrada:

XyN Potencia, multiplicación “N” Y, X


ITERACIONES
Suma y resta, for

Y = (-2*X2) +50

ALGORITMO.

1. Inicio
2. Leer los valores de la variable n
3. Utilizando la instrucción for asignar a la variable i las condiciones iniciales, el valor final
y el incremento del ciclo.
4. Leer valor de la variable x
5. Asignar a la variable y= el producto de menos 2 por la variable x al cuadrado mas la
constante 50
6. Imprimir los valores de x y y
7. Terminar

DIAGRAMA DE FLUJO.

Inicio

I=1;i<=N;i++

Alto
Y=(-2*X2)+50

TIPO DE VARIABLES: ENTEROS


XY X, Y,N ,i
INSTRUCCIONES EN “C”
int
scanf
for
PRUEBA DE ESCRITORIO. printf
pow
LEER N i LEER X Y IMPRIMIR X, Y
4 1 0 50 0 50

2 2 42 2 42

3 4 18 4 18

4 6 -22 6 -22

CODIFICACION.

#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
printf("UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO\n");
printf("FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLA C4\n");
printf("INGENIERIA EN ALIMENTOS\n");
printf("CICLO FOR, PROGRAMA 4 \n");
printf("RECURSOS INFORMATICOS\n");
printf("ANGUIANO BONIFACIO JESSICA NAYELI\n");
int x,y,i,N;
printf("dame el valor de N: ");
scanf("%d",&N);
for(i=1; i<=N;i++)
{
printf("dame el valor de x: ");
scanf("%d",&x);
y= (-2 * pow(x,2)) +50;
printf("el valor de x ES:%d",x);
printf(" Y=%d\n",y);
}
return(0);
getch();
}

PROGRAMA REPETITIVO:
PROBLEMA 5.- Construya un programa que lea como dato el valor de N y calcule valores de
Y= (-2*X2) +50 para el valor inicial de X=0 con incrementos de 2. El proceso se debe repetir
hasta que Y<0 o si no se cumple esta condición, hasta que se hayan calculado N valores de y.
Datos de Proceso CONDICIÓN DE PARO Datos de salida
entrada:

XyN Y = (-2*X2) +50 Y <0 Y, X

“N” ITERACIONES

El problema 5 no se
puede pasar al ciclo for
ya que tiene una
etiqueta de paro

PROGRAMA REPETITIVO 6:

EJEMPLO CON SUMA ACUMULADA INTERNA Y CONTADOR:

S= 1 + 2 + 3 + 4+…

ALGORITMO A:
1. Inicio.
2. Leer la variable N
3. Asignar a la variable S el valor de la constante cero
4. Utilizando la instrucción for asignar a la variable i las condiciones iniciales, el valor final y el
incremento del ciclo.
5. Asignar a la variable S la sumatoria de la variable S más el valor de la variable i
6. Imprimir el valor de S
7. Alto

PRUEBA DE ESCRITORIO A.
N i S IMP. S.

1 0/1
4

2 1 + 2 =3

3 3 + 3 =6

4 6 + 4 =10 10
DIAGRAMA DE FLUJO.

Inicio
S=0

S=0

i=1;i<=N;i++
TIPO DE VARIABLES A
ENTEROS N, i, S
INSTRUCCIONES EN “C” S=S+i
int
scanf
printf Alto
for S

CODIFICACION.

#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
printf("UNIVERSIDADNACIONAL AUTONOMA DE MEXICO\n");
printf("FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLAN C1\n");
printf("INGENIERIA EN ALIMENTOS\n");
printf("CICLO FOR, PROGRAMA 6A\n");
printf("RECURSOS INFORMATICOS\n");
printf("ANGUIANO BONIFACIO JESSICA NAYELI\n");
int N,i,s;
printf("Pon el valor de N=");
scanf("%d",&N);
s=0;
for(i=1;i<=N;i++)
{
s=s+i;
printf("La suma es=%d\n",s);

}
return (0);
getch();

}
EJEMPLO CON SUMA ACUMULADA EXTERNA Y CONTADOR:

b) S= X + X + X +X+…

ALGORITMO B:
1. Inicio.
2. Leer la variable N
3. Asignar a variable S el valor de la constante cero
4. Utilizando la instrucción for asignar a la variable i las condiciones iniciales, el valor final
y el incremento del ciclo.
5. Leer la variable X
6. Asignar a la variable S la sumatoria de la variable S más el valor de la variable X
7. Imprimir el valor de S
8. Alto

PRUEBA DE ESCRITORIO B.

N i Leer S IMP. S.
X

4 1 5.5 0/5.5 =5.5

2 6.5 5.5 + 6.5 =12

3 7.0 12 + 7 =19

4 3.4 19 + 3.4 =22.4 22.4


DIAGRAMA DE FLUJO.

Inicio
TIPO DE VARIABLES B
ENTEROS N, i
FLOTANTE X,S
N INSTRUCCIONES EN “C”
Int
float
scanf
S=0 printf
for

i=1;i<=N;i++

Alto
S=S+i

CODIFICACION.

#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
printf("UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO\n");
printf("FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLAN C1\n");
printf("INGENIERIA EN ALIMENTOS\n");
printf("CICLO FOR, PROGRAMA 6B\n");
printf("ANGUIANO BONIFACIO JESSICA NAYELI\n");
int N,i;
float X,S;
printf("Pon el valor de N=");
scanf("%d",&N);
S=0;
for(i=1;i<=N;i++)
{
printf("Pon el valor de x=");
scanf("%f",&X);
S=S+X;
printf("La suma es=%3.1f\n",S);

}
return(0);
getch();
}
PROGRAMA REPETITIVO 7:
EJEMPLO DE PRODUCTO INTERNO CON CONTADOR:
a) P= 1 * 2 * 3 * 4*…

ALGORITMO A:
1. Inicio.
2. Leer la variable N
3. Asignar a la variable P el valor de la constante uno
4. Utilizando la instrucción for asignar a la variable i las condiciones iniciales, el valor final
y el incremento del ciclo.
5. Asignar a la variable P el producto de la variable P por la variable i
6. Imprimir el valor de la variable P
7. Alto

PRUEBA DE ESCRITORIO A.
N i P IMP. P.

4 1 1/1*1=1

2 1 * 2 =2

3 2 *3 =6

4 6 * 4 =24 24
DIAGRAMA DE FLUJO.

Alto

P=1

i=1;i<=N;i++

TIPO DE VARIABLES A
ENTEROS N, i, P
INSTRUCCIONES EN “C” P=P*i
int
scanf
Alto
printf
P
for

CODIFICACION.

#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
printf("UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO\n");
printf("FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLAN C1\n");
printf("INGENIERIA EN ALIMENTOS\n");
printf("CICLO FOR, PROGRAMA 6B\n");
printf("ANGUIANO BONIFACIO JESSICA NAYELI\n");
int N,i,P;
printf("Dame el valor de N=");
scanf("%d",&N);
P=1;
for(i=1;i<=N;i++)
{
P=P*i;
printf("El producto interno es=%d\n",P);

}
return(0);
getch();
}
EJEMPLO DE PRODUCTO EXTERNO CON CONTADOR:

b) S= X * X * X *X*…

ALGORITMO B:
9. Inicio.
10. Leer la variable N
11. Asignar a la variable P el valor de la constante uno
12. Utilizando la instrucción for asignar a la variable i las condiciones iniciales, el valor final
y el incremento del ciclo.
13. Leer la variable X
14. Asignar a la variable P el producto de la variable P por la variable X
15. Imprimir el valor de la variable P
16. Alto

PRUEBA DE ESCRITORIO B.

N i Leer P IMP. P.
X

4 1 2.5 1/1.0* 2.5 =2.5

2 2.0 2.5 * 2.0 = 5

3 5.0 5 * 5 =25

4 4.2 25 * 4.2 =105 105


DIAGRAMA DE FLUJO.

Inicio
TIPO DE VARIABLES B
ENTEROS N, i
FLOTANTE X,P
N INSTRUCCIONES EN “C”
Int
float
scanf
P=1 printf
for

i=1;i<=N;i++

Alto
P=P*X

CODIFICACION.

include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
printf("UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO\n");
printf("FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLAN C1\n");
printf("INGENIERIA EN ALIMENTOS\n");
printf("CICLO FOR, PROGRAMA 7A\n");
printf("ANGUIANO BONIFACIO JESSICA NAYELI\n");
int N,i;
float X,P;
printf("Dame el valor de N=");
scanf("%d",&N);
P=1;
for(i=1;i<=N;i++)
{
printf("Dameel valor de X=");
scanf("%f",&X);
P=P*X;
printf("El valor interno es=%2.1f\n",P);
}
return(0);
getch();
}
PROGRAMA REPETITIVO 8:
PROBLEMA 8.- Construya un programa que genere “e” de la serie descrita abajo e imprima N.
Como salida se deben imprimir los elementos generados.

Datos de entrada: Proceso TERMINACIÓN Datos de salida

N, X, Y, Z, T, e, i e= Y/Z, “N” iteraciones Y, X, Z, T, e


for

ALGORITMO:
8. Inicio.
9. Leer la variable N
10. Asignar a la variable X el valor de la constante 0
11. Asignar a la variable T el valor de la constante 0
12. Utilizando la instrucción for asignar a la variable i las condiciones iniciales, el valor final
y el incremento del ciclo.
13. Incrementar la variable T con la sumatoria de la variable Tmas1
14. Incrementar la variable X con la sumatoria de la variable X más 2
15. Asignar a la variable Y el valor de la variable X al cuadrado
16. Asignar a la variable Z el valor de la variable T elevado a la X
17. Asignarle al elemento e la división de la variable Y entre la variable Z
18. Imprimir el valor de la variable e.
19. Alto

PRUEBA DE ESCRITORIO

N i X T Y Z e IMPRIME e

4 1 0/2 0/1 4 1 4 4

2 4 2 16 16 1 1
3 6 3 36 729 0.049 0.049

4 8 4 64 65536 0.0009 0.0009

DIAGRAMA DE FLUJO

Inicio

X=0

T=0

i=1;i<=N;i++

T=T+1

X=X+2

y=pow(X,2)
Alto

z=pow(T,X)
TIPO DE VARIABLES
ENTEROS N, i
PUNTO FLOTANTE: X, T, Y, Z,
e=(y/z) e
INSTRUCCIONES EN “C”
int
float
e scanf
printf
for
CODIFICACION.

#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
printf("UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO\n");
printf("FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLAN C1\n");
printf("INGENIERIA EN ALIMENTOS\n");
printf("CICLO FOR, PROGRAMA 8\n");
printf("ANGUIANO BONIFACIO JESSICA NAYELI\n");
int N,i;
float X,T,y,e,z;
printf("Dame el valor de N=");
scanf("%d",&N);
X=0;
T=0;
for(i=1;i<=N;i++)
{
printf("i e\n");
T=T+1;
X=X+2;
y=pow(X,2);
z=pow(T,X);
e=(y/z);
printf("%d",i);
printf(" %e\n",e);
}
printf("El proceso termino en %d",N);
printf("Interacciones");
return(0);
getch();
}

PROGRAMA REPETITIVO 9:
PROBLEMA 9.- Construya un programa que genere “e” de la serie descrita abajo e imprima N.
Como salida se deben imprimir los elementos generados. Se sabe que la solución de un
problema se considera mejor si ocupa menos instrucciones, de acuerdo a esto, una mejor
solución del problema sería como sigue.

Datos de entrada: Proceso TERMINACIÓN Datos de salida

N, Y, Z, e, i e= Y/Z, for “N” iteraciones Y, Z, e


ALGORITMO:
1. Inicio.
2. Leer la variable N
3. Utilizando la instrucción for asignar a la variable i las condiciones iniciales, el valor final y el
incremento del ciclo.
4. Asignar a la variable Y el producto de la constante 2 por la variable i al cuadrado
5. Asignar a la variable Z la variable i elevada al producto de la constante 2 por la variable i
6. Asignarle al elemento e la división de la variable Y entre la variable Z
7. imprimir el valor de la variable e.
8. Alto.

PRUEBA DE ESCRITORIO

N I X T Y Z e
4 1 0/2 0/1 4 1 4
2 4 2 1 16 1
6
3 6 3 3 729 0.049
2
4 8 4 6 65536 0.0009
4

DIAGRAMA DE FLUJO

Inicio TIPO DE VARIABLES


ENTEROS N, i
PUNTO FLOTANTE: Y, Z, e
INSTRUCCIONES EN “C”
N int
float
scanf
printf
i=1;i<=N;i++ for

y=pow((2*i),2)

z=pow((i),(2*i))

e=(y/z)
Alto

e
CODIFICACION.

#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
printf("UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO\n");
printf("FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLAN C1\n");
printf("INGENIERIA EN ALIMENTOS\n");
printf("CICLO FOR, PROGRAMA 8\n");
printf("ANGUIANO BONIFACIO JESSICA NAYELI\n");
int N,i;
float y,e,z;
printf("Dame el valor de N=");
scanf("%d",&N);
for(i=1;i<=N;i++)
{
printf("i e\n");
y=pow((2*i),2);
z=pow((i),(2*i));
e=(y/z);
printf("%d",i);
printf(" %e\n",e);
}
printf("El proceso termino en %d,N");
printf("Interacciones");
return(0);
getch();
}
PROGRAMA REPETITIVO 10:
PROBLEMA 10.- Construya un programa que lea X y N, y calcule S= X 1 + X2 + X3 +…XN como
salida se deben imprimir X y S.

VARIABLES DE ENTRADA PROCESO TERMINACIÓN SALIDA

X, N, i, S for “N” X, S
ITERACIONES
S= S + Xi

ALGORITMO.
20. Inicio.
21. Leer la variable N, X
22. Asignar a la variable S el valor de la constante 0
23. Utilizando la instrucción for asignar a la variable i las condiciones iniciales, el valor final y el
incremento del ciclo.
24. Asignar a la variable e el valor de la variable X elevada a la variable i
25. Asignar a la variable S la sumatoria de la variable S más la variable e
26. Imprimir los valores de las variables S y X
27. Alto

PRUEBA DE ESCRITORIO
N X i S IMP. X S.

4 2 1 0/21 = 2

2 21 + 22 = 6

3 21 + 22 + 23=14

4 21 + 22 + 23 + 24 = 30 2 30

DIAGRAMA DE FLUJO

Inicio TIPO DE VARIABLES


ENTEROS N, i, X, S
INSTRUCCIONES EN “C”
Int
N, X scanf
printf
for

S=0

i=1;i<=N;i++

e=pow(X,i)

s=s+e
s, X Alto
CODIFICACION.

También podría gustarte