Академический Документы
Профессиональный Документы
Культура Документы
PROBLEMAS
CENTRO DE BACHILLERATO
TECNOLOGICO
Industrial y de servicios No. 1
PARA:
CUARTO SEMESTRE
GRUPO:____________
ESPECIALIDAD:
INFORMATICA
PERIODO:
FEBRERO- JULIO DEL 2010
NOMBRE DE LA MAESTRA:
________________________________________________
PROGRAMA:
Ejecución y
Validación
DATOS RESULTADOS
PROCESO
ENTADA SALIDA
Entrada: información dada del problema.
Proceso: operaciones o cálculos necesarios para encontrar la solución del problema.
Salida: respuestas dadas por el proceso resultados finales de los cálculos.
El proceso de diseño de un programa consta de los siguientes pasos o etapas:
Pasos:
Pasos Etapa Descripción
1 Análisis del problema Conducen al diseño detallado por medio un código escrito
2 Diseño de algoritmo en forma de un algoritmo
3 Codificación Se implementa el algoritmo en un código escrito en un
lenguaje de programación. Refleja las ideas desarrolladas
en las etapas de análisis y diseño
4 Compilación y ejecución Traduce el programa fuente a programa en código de
maquina y lo ejecuta.
5 Verificación Busca errores en las etapas anteriores y los elimina.
6 Depuración
7 Documentación Son comentarios, etiquetas de texto, que facilitan la
Instrucción
INICIO
Leer nombre
Leer dirección
Leer teléfono
Leer FechaNac
Escribir nombre, dirección, teléfono, FechaNac
FIN
EJEMPLO 3: El siguiente algoritmo te pida dos variables y que calcule la suma y resta e
imprima los resultados.
INICIO
Leer N1, N2
Suma= N1 + N2
Resta = N1 - N2
Escribir suma
Escribir resta
FIN
II.- SELECTIVA
INICIO
Leer edad
Si edad >= 18
Escribir “ES MAYOR DE EDAD”
Fin si
FIN
si no si Condiciónn entonces
Instruccionesn - 1
si no
Instruccionesn
fin si
En este caso hay una serie de condiciones que tienen que ser mutuamente excluyentes, si una
de ellas se cumple las demás tienen que ser falsas necesariamente, hay un caso si no que será
cierto cuando las demás condiciones sean falsas.
En esta estructura si Condición1 es cierta, entonces se ejecuta sólo Instrucciones. En general, si
Condición es verdadera, entonces sólo se ejecuta Instrucciones.
EJERCICIO 7: El siguiente algoritmo determina cual es mayor de tres números.
Inicio
Leer A,B,C
Si A>B entonces
Si A>C entonces
Escribir “El mayor es”, A
Si no
Escribir “El mayor es”, C
Fin si
Si no
Si B>C entonces
Escribir “El mayor es”, B
Si no
Escribir “El mayor es”, C
Fin si
Fin si
Fin
caso Valorn-1:
Instruccionesn-1
[en otro caso:
Instruccionesn]
Fin seleccionar Indicador
EJERCICIO 8: El siguiente algoritmo imprime un menú con tres opciones: 1.- Suma, 2.- Resta y
3.-Fin, al seleccionar suma o resta realizara las operación con dos variables e imprimirá el
resultado, al seleccionar la opción 3 saldrá del algoritmo.
Inicio
Escribir ”menú:”
“1.- suma”
“2.- resta”
“3.- fin”
Seleccionar Opcion
Leer opc
Caso opc =1
leer a, b
suma = a + b
escribir suma
Caso opc = 2
leer a, b
resta = a – b
escribir resta
En otro caso
Escribir “fin del programa”
Fin seleccionar
Fin
PRÁCTICA 8: Realizar un algoritmo que realice una de las 5 operaciones especificadas en
el MENU: 1. Suma, 2. Resta, 3. Multiplicación, 4. División, 5. Exponenciación, 6.
Salir, e imprima el resultado.
En este caso hay Indicador es una variable o una función cuyo valor es comparado en cada
caso con Valori, si en algún caso coinciden ambos valores, entonces se ejecutarán las
Instruccionesi correspondientes. La sección en otro caso es análoga a la sección si no del
ejemplo anterior.
V.- ITERATIVA:
Las instrucciones iterativas abren la posibilidad de realizar una secuencia de instrucciones
más de una vez.
mientras P hacer
Instrucciones
fin mientras
El bucle se repite mientras la condición P sea cierta, si al llegar por primera vez al bucle
mientras la condición es falsa, el cuerpo del bucle no se ejecuta ninguna vez.
Existen otras variantes que se derivan a partir de la anterior. La estructura de control hacer
se utiliza cuando es necesario que las instrucciones de una estructura mientras se ejecuten al
menos una vez:
hacer
Instrucciones
mientras P
La estructura anterior equivaldría a escribir
Instrucciones
mientras P hacer
Instrucciones
fin mientras
EJERCICIO 10: Realizar un algoritmo que calcule la suma consecutiva que empiece en un
número dado y que termine en un segundo número dado.
Inicio
Leer N1
Leer N2
Suma = 0
N=N1
Repetir N1 > N2
Suma = Suma+N
N = N+1
Fin repetir
Escribir Suma
Fin
PRACTICA 10: Escribir un algoritmo que pida la edad y el sexo y dependiendo si es hombre
o mujer y si puede votar o no, utilice el ciclo repetir y la condición si-sino.
Ciclo PARA HASTA: Una estructura de control muy común es el ciclo para, la cual se usa
cuando se desea iterar sobre un índice i (por convención se usa i, sin embargo se puede usar
cualquier identificador):
para hasta n hacer
Instrucciones
fin para
EJERCICIO 12: El siguiente algoritmo imprime las tablas de multiplicar del 1 al 10, imprimiendo
de una en una.
INICIO
Tabla = 1
X= 1
Para hasta que Tabal >10
Para hasta que X= >10
Mult= Tabla * X
Escribir Tabla “*”, X, “=”, Mult
X= X+ 1
Fin para
Tabla = Tabla +1
Fin Para
FIN
PRACTICA 12: Realizar un algoritmo que en un Para hasta pida las calificaciones de tus
materias de este semestre y te calcule el promedio, en otro ciclo de Para hasta imprimir las
calificaciones que diste y el promedio calculado.
SUBPROGRAMA
Representa un tratamiento con referencia, compuesta
de una o varias operaciones o programas que se
definene completamente.
SALIDA
POR
PANTALLA
I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1
L.S.C. MAGDALENA ESCARCIA LOZANO
4 SEMESTRE
L.S.C. SELMA ALBUQUERQUE WEXEL
FEB-JUL´2010
L.S.C. MA EUGENIA ACUÑA REYES
SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE 11
PROBLEMAS
SALIDA
POR Indica la salida de información por impresora
IMPRESORA
NO
3.- LINEAS DE FLUJO: Indican una secuencia lógica de operaciones desde el comienzo
(inicio) hasta final (fin o parada).
SIMBOLO DESCRIPCIÓN
DIRECCIONES
COMENTARIOS: DESe FLUJO: Muestran
utiliza para dirección
aclarar y sentidoel
o documentar
del flujo del proceso, conectando los símbolos.
diseño del algoritmo con algún comentario que se
considera necesario
4.- SIMBOLOS DE CONEXIÓN: Se utilizan para la unión de líneas de flujo en los casos de
reagrupamiento de conexión o continuación en otra parte, pero por cualquier motivo cambio
de hoja, cruce de líneas, etc.
SIMBOLO DESCRIPCIÓN
Conector dentro de página: Representa la continuidad del
diagrama dentro de la misma página.
EJEMPLOS:
EJEMPLO 13: El siguiente diagrama de flujo te pide a través del teclado nombre, dirección,
teléfono y fecha de nacimiento y que imprima los datos por la pantalla.
INICIO
nombre, dirección,
teléfono,
FechaNac
nombre,
dirección,
teléfono,
FechaNac
FIN
PRACTICA 13: Realiza un Diagrama de flujo que te pida a través del teclado nombre,
especialidad, grupo, grado y número de control, que imprima los datos por la
impresora.
EJEMPLO 14: El siguiente diagrama de flujo te pide dos variables por el teclado y que
calcule la suma y resta e imprima los resultados por pantalla.
INICIO
N1, N2
Suma = N1+ N2
Resta = N1 – N2
SUMA
RESTA
FIN
PRACTICA 14: Realizar un diagrama de flujo que te calcula suma, resta, multiplicación y
división de dos variables e imprima los resultados por la impresora.
INICIO
C1, C2, C3
Promedio
FIN
Cuerpo:
Inicio
Instrucciones
Fin
EJEMPLOS:
EJEMPLO 16: El siguiente Pseudocódigo que te pida nombre, dirección, teléfono y fecha de
nacimiento y que imprima los datos.
INICIO
Variables nombre, dirección, teléfono, FechaNac
Escribir “Dame tu nombre:”
Leer nombre
Escribir “Dame tu dirección:”
Leer dirección
Escribir “Dame tu teléfono:”
Leer teléfono
Escribir “Dame tu Fecha de Nacimiento:”
Leer FechaNac
Imprimir nombre, dirección, teléfono, FechaNac
FIN
PRACTICA 16: Realiza un Pseudocódigo que te pida nombre, especialidad, grupo, grado y
número de control, los datos pedidos los va a imprimir .
EJEMPLO 17: El siguiente Pseudocódigo que pida dos variables y que calcule la suma y
resta e imprima los resultados.
INICIO
Variables N1, N2, Suma, Resta
Escribir “Dame dos números:”
Leer N1, N2
Suma= N1 + N2
Resta = N1 - N2
Imprimir Suma
Imprimir Resta
FIN
Constantes enumeradas
Las constantes enumeradas permiten crear listas de elementos afines. Un ejemplo típico es una
constante enumerada de listas de colores, que se puede declarar como:
\\programa: que nos permite saber la distancia en millas y en Km. A la luna
\\progamador:
\\fecha:
#incluye < iostream.h>
main0
{
const double luna= 2388757;// distancia en millas
cout<<”La distancia ala luna es:”<<Luna<<”
6.- Tipos de Datos: La siguiente tabla muestra los tipos de datos disponibles en el
compilador de C++
TIPOTAMAÑO(bits)RANGO DE VALORChar 8-128 a 127Unsigned char
8 0 a 255Enum 16-32,768 a 32,767Int 16-32,768 a 32,767Short int
16-32,768 a 32,767Unsigned in 16 0 a 65,535Long 32 -2,147,483,648 a
2,147,483,647Unsigned long 32 0 a 4,294,967,295Flota 32 3.4 E-308 a 3.4 E
+38Double 641.7E-308 a 1.7 E +308Long double 803.4E-4932 a 3.4E +3932Void
Near pointer 16Dirección de memoriaFar pointer 16Dirección de memoria 7.- Tipos de
datos fundamentales:
char Representa un carácter en código ASCII, también se puede interpretar como
un entero.
int Entero
void No indica ningún tipo. Es el tipo de las funciones que no devuelven nada.
Los tipos short int, long int, unsigned int y long float se pueden escribir como: short, long, unsigned
y double.
Con respecto al tamaño que ocupan en memoria variables de estos tipos, todo lo que garantiza C
es:
sizeof(char) = 1
sizeof(short) <= sizeof(int) <= sizeof(long)
sizeof(unsigned) = sizeof(int)
sizeof(float) =< sizeof(double)
Donde sizeof es un operador que está incorporado en C y devuelve el número de bytes que tiene
un objeto.
Hay un grupo de modificadores que indican la forma que se almacena una determinada variable
de u n determinado tipo. Se indica antes del tipo de la variable.
static
Cuando se invoca a una función por segunda vez se pierden los valores que las variables locales
de la función tenían al acabar la anterior llamada. Declarando una variable de este tipo cuando se
llama por segunda vez a la subrutina la variable static (estática) contiene el mismo valor que al
acabar la llamada anterior.
auto
Es lo mismo que si no se usara ningún modificador
volatile
El compilador debe asumir que la variable está relacionada con un dispositivo y que puede
cambiar de valor en cualquier momento.
register
El compilador procurará almacenar la variable cualificada de este modo en un registro de la CPU.
extern
La variable se considera declarada en otro fichero. No se le asignará dirección ni espacio de
memoria.
8.- OPERADORES:
OPERADORES ARITMETICOS:
Se aplican sobre objetos con valores numéricos, como se muestra en la siguiente tabla.
OPERADORES RELACIONALES:
Se usan para comparar los valores que resultan de reducir expresiones:
OPERADORSIGNIFICADO >Mayor que < Menor que =Igual >=Mayor igual que
<= Menor igual que ==Igualdad != Desigualdad
OPERADORES LÓGICOS:
Se aplican sobre los enunciados que resultan de las operaciones relaciónales:
OPERADORES INCREMENTALES.
Son operadores unarios que incrementan o disminuyen en una unidad el valor de la variable a la
que afectan. Los operadores son (+ +) , ( - - ) .
9.- EXPRESIONES
Una expresión es una combinación de variables y/o constantes, y operadores. La
expresión es equivalente al resultado que proporciona al aplicar sus operadores a sus operandos.
Por ejemplo, 1+5 es una expresión formada por dos operandos (1 y 5) y un operador que es el
signo + ; esta expresión es equivalente al valor de 6 , lo cual quiere decir que allí donde esta
expresión aparece en el programa, en el momento de la ejecución es evaluada y sustituida por su
resultado.
Una expresión puede estar formada por otras expresiones más sencillas, y puede contener
paréntesis de varios niveles agrupando distintos términos.
10.- Comentarios:
A la hora de programar es conveniente añadir comentarios (cuantos más mejor) para
poder saber que función tiene cada parte del código, en caso de que no lo utilicemos durante
algún tiempo. Además facilitaremos el trabajo a otros programadores que puedan utilizar nuestro
archivo fuente.
Para poner comentarios en un programa escrito en C usamos los símbolos /* , */ o // , //
/* Este es un ejemplo de comentario */
// Un comentario también puede
estar escrito en varias líneas //
El símbolo /* o // coloca al principio del comentario y el símbolo */ o // al final.
El comentario, contenido entre estos dos símbolos, no será tenido en cuenta por el
compilador.
bloque local
}
funcion1( )
{
variables locales
bloque
}
# include
Es una directiva del procesador que contiene los archivos ASCII (archivo fuente)
de cabecera. Se les conoce como conjunto de librerías de código objeto.
Sintaxis:
# include <nombrearch> ó # include nombrearch.h
# define
Indica al procesador que defina un ítem de datos u operación para el programa C
- La Librería conio.h se utiliza para las instrucciones que afectan los efectos en el monitor, como
por ejemplo la sentencia clrscr ( ), gotoxy(a,b), window(a,b,x,y), getch(), getche(), return 0.
Es necesario incluir la linea: #include <conio.h>. Donde conio.h es el archivo de cabecera
donde se encuentran declarados los prototipos de las funciones que manejan la entrada/salida
estándar por la consola.
- La librería math.h la utilizamos cuando realizaremos cálculos con alguna función especial.
BARRA DE MUNUS
BARRA DE
NOMBRES
BARRA DE HERRAMIENTAS
Ejemplos:
printf("ABC");
Otra manera de hacer esto es mediante la proposición
printf("%s", "ABC");
El formato %s hace que el argumento "ABC" se imprima en el formato de un string de caracteres.
Esto mismo puede realizarse también con la proposición
printf("%c%c%c", 'A', 'B', 'C');
4.- scanf(): Esta función toma la entrada, normalmente del teclado y la almacena en variables
previamente declaradas.
Trabaja de maneta similar al printf(), utiliza la mayoria de los comandos mostradote en la tabla
anterior, ejemplos
#include <iostream..h>
#include <stdio.h> /* Estándar Input/Output */
#include <conio.h>
main()
{
int x;
char c;
float y;
double z;
clrscr () ;
printf("\nIngrese un caracter : ");
scanf("%c", &c);
printf("\nIngrese un número entero : ");
scanf("%d", &x);
printf("\nIngrese un número con decimales : ");
scanf("%f", &y);
printf("\nIngrese un número entero doble : ");
scanf("%lf", &z);
printf("\n\nLos datos que ud. ingreso fueron :\n");
printf("%c %d %e %e\n\n", c, x, y, z);
getch();
}
Código significado
\n Nueva línea
\r Retorno de carro
\t Tabulación
\v Tabulación vertical
\a Alerta (pitido sonoro)
\b Retroceso de espacio
5.- La función gets(): toma una cadena de caracteres desde el teclado y la almacena en la
variable cuyo identificador aparece como argumento en la invocación a gets(), como en:
gets(nombre);
6.- La función puts() despliega en la pantalla una cadena de caracteres que se encuentra
almacenada en la variable cuyo identificador aparece como argumento en la invocación
a la función puts().
EJEMPLO 19: El siguiente programa te pide a través del teclado nombre, dirección,
teléfono y fecha de nacimiento y te que imprima los datos.
// Programa de registro de datos
# include <iostream.h> //librería que esta utilizando
#include <stdio.h>
#include <conio.h>
main ()
{
char nombre[30];
char direccion[35];
char telefono, FechaNac;
clrscr () ;
puts ("INTRODUZCA SU NOMBRE ");
gets (nombre);
puts ("INTRODUZCA SU DIRECCION ");
gets (direccion);
puts ("INTRODUZCA SU TELEFONO ");
gets (telefono);
puts ("INTRODUZCA SU FECHA DE NACIMEINTO ");
gets (FechaNac);
printf("\n\nLos datos que usted ingreso fueron :\n");
printf("%s", nombre);
printf("%s", direccion);
printf("%s", telefono);
printf("%s", FechaNac);
getch();
}
PRACTICA 19: Realiza un programa que te pida a través del teclado nombre,
especialidad, grupo, grado y número de control, que imprima los datos que
introdujiste.
7.- Función clrscr(): que limpia la pantalla y posiciona el cursor en la esquina superior izquierda
de la ventana actual.
8.- Función gotoxy(a,b): posiciona el cursor en la posición establecida por la columna a y el
renglón b.
EJEMPLO 20: El siguiente programa te pide dos variables por el teclado y que calcule la
suma y resta e imprima los resultados.
PRACTICA 21: Realizar programa que calcule el promedio de las asignaturas (materias)
que estas llevando en este semestre, imprimir la calificación de las materias y el
promedio.
EJEMPLO 22: Un vendedor recibe un sueldo base mas un 10% extra por comisión de sus ventas,
el vendedor desea saber cuanto dinero obtendrá por concepto de comisiones por las tres
ventas que realiza en el mes y el total que recibirá en el mes tomando en cuenta su
sueldo base y comisiones.
#include <stdio.h>
#include < iostream.h >
#include <conio.h>
main()
{
float sb,v1,v2,v3,com,tot_ven,tot_pag;
clrscr();
sb=5000;
printf ("\nIngrese la venta 1:");
scanf ("%f",& v1);
printf ("\nIngrese la venta 2:");
scanf ("%f",& v2);
printf ("\nIngrese la venta 3");
scanf ("%f",& v3);
tot_ven=v1+v2+v3;
com=tot_ven*.10;
tot_pag=sb+com;
printf ("\nTotal de pago:%f",tot_pag);
printf ("\nComision:%f",com);
getch();
return 0: }
PRACTICA 22: Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente
desea saber cuanto deberá pagar finalmente por su compra.
PREACTICA 23: Un alumno desea saber cual será su calificación final en la submodulo de
PRINCIPIOS DE PROGRAMACION. Dicha calificación se compone de los siguientes
porcentajes:
30 % del examen teórico.
40% calificación de las practicas.
10% asistencia.
10% tareas
10% participaciones
Esta sentencia permite permite elegir entre dos opciones de ejecución, y su sintaxis es :
if( condición )
[bloque_1]
[else]
[bloque_2]
donde:
bloque_1 y bloque_2 pueden estar formados por uno ó más instrucciones.
Esta estructura puede anidarse para elegir entre un grupo de más de dos opciones,
tomando la siguiente forma:
if(condición_1)
bloque_1;
else if(condición_2)
bloque_2;
else if(condición_3)
bloque_3;
............
else
bloque_N;
INICIO
Edad
SI “Es mayor de
Edad Edad”
>=18
NO
INICIO
“Es menor de Variables Calificación
Edad” Escribir “Anota una calificación:”
Leer Calificación
I.S.C. LORENA SANTANA MARTINEZ Si Calificación>=6 C.B.T.i.s No.1
L.S.C. MAGDALENA ESCARCIA LOZANO
4 SEMESTRE Imprimir “Aprobado”
L.S.C. SELMA ALBUQUERQUE WEXEL Fin si
FEB-JUL´2010
L.S.C. MA EUGENIA ACUÑA REYES FIN
SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE 29
PROBLEMAS
FIN
//programa te pide la edad e imprime si es mayor o menor de edad.
#include <iostream.h>
#include <conio.h>
#include <ctdio.h>
main()
{
int edad;
clrscr();
cout << "INTRODUZCA LA EDAD: ";
cin>>edad;
if(edad >= 18) {
cout << "ERES MAYOR DE EDAD.";
}
else {
cout << "ERES MENOR DE EDAD.";
}
getch();
}
PRACTICA 25: Realizar un diagrama de flujo y programa que te pida la calificación a través del
teclado e imprima si la calificación es aprobatoria o reprobatoria.
INICIO
A, B
SI “El
A mayor
>B es”, A
NO
“El
mayor
es”, B
FIN
/*Programa Mayor de 3 numeros*//
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <stdio.h>
main()
{
int a,b,c;
clrscr ();
cout<<"teclea el primer numero:"; cin>>a;
cout<<"teclea el segundo numero:"; cin>>b;
cout<<"teclea el tercer numero:"; cin>>c;
if(a>b){
if(a>c){
cout<<"\n el mayor es:"<<a;
}
else {
cout<<"\n el mayor es:"<<c;
}
}
else {
if(c>b){
cout<<"\n el mayor es:"<<c;
}
else {
cout<<"\n el mayor es:"<<b;
}
}
getch();
return 0;
}
PRACTICA 26: Realizar un diagrama de flujo y programa que determine que tipo de rectángulo
es (ESCALENO, ISOSCELES O EQUILATERO) pidiendo las mediadas de los tres lados.
9.2. Sentencia switch(): Esta instrucción es útil cuando se tiene que elegir entre más de dos
opciones, como es el caso de manejo de menús. SINTAXIS:
switch(expresión_entera)
{
case Const_1 : Bloque_1 ; break ;
case Const_2 : Bloque_2 ; break ;
.............................
.............................
.............................
case Const_N : Bloque_N ; break ;
default : Bloque_X ;
}
EJERCICIO 27: El siguiente diagrama de flujo y programa imprime un menú con tres opciones:
1.- Suma, 2.- Resta y 3.-Fin, al seleccionar suma o resta realizara las operación con dos
variables e imprimirá el resultado, al seleccionar la opción 3 saldrá del diagrama.
INICIO
MENÚ:
1.- SUMA
2.- RESTA
3.- FIN
SELECCIONAR LA OPCION
opc
opc=2 opc= 1
a, b opc a, b
opc = 3
FIN
ESTE DIAGRAMA DE FLUJO TAMBIEN SE PUEDE DESARROLLAR DE LA
SIGUIENTE MANERA
INICIO
1
MENÚ:
1.- SUMA
2.- RESTA
I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1
3.- FIN
L.S.C. MAGDALENA ESCARCIA LOZANO
4 SEMESTRE SELECCIONAR
LA OPCION
L.S.C. SELMA ALBUQUERQUE WEXEL
FEB-JUL´2010
L.S.C. MA EUGENIA ACUÑA REYES
SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE 32
PROBLEMAS
opc
a, b
opc=
1
SI NO
opc=
suma= a+b
2
SI NO
SI NO
resta
1
“FIN DEL
PROGRAM
A
FIN
case 1:
clrscr();
cout<<"Teclea el Primer Numero:";cin>>a;
cout<<"Teclea el Segundo Numero:";cin>>b;
suma=a+b;
cout<<"\n El resultado de la suma es="<<suma;
break;
case 2:
clrscr();
cout<<"Teclea el Primer Numero:";cin>>a;
cout<<"Teclea el Segundo Numero:";cin>>b;
resta=a-b;
cout<<"\n El resultado de la resta es="<<resta;
break;
case 3:
clrscr();
cout<<"Fin del programa";
break;
default:
clrscr();
cout<<"No existe la opcion prueba de nuevo";
}
getch();
return 0;
}
PRÁCTICA 27: Realizar un diagrama de flujo y programa que realice una de las 5 operaciones
especificadas en el MENU: 1.-Suma, 2.-Resta, 3.-Multiplicación, 4.-
División,
5.- Exponenciación, 6. -Salir, e imprima el resultado.
DIAGRAMA INICIO
DE FLUJO
I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1
L.S.C. MAGDALENA ESCARCIA LOZANO
4 SEMESTRE
L.S.C. SELMA ALBUQUERQUE WEXEL
FEB-JUL´2010
L.S.C. MA EUGENIA ACUÑA REYES
SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE 34
PROBLEMAS
1
MENÚ:
1.- RECTANGUO
2.- CUADRADO
3.- FIN
SELECCIONAR LA
OPC
ERROR
NO INTENTA
OPC<1
OPC>5 DE 1
NUEVO
SI
2
OPC
=1
SI NO
B,H
OPC
=2
SI NO
PERIMETROR= 2(B)
+2(H)
AREAR= B*H L
OPC
PERIMETROR PERIMETROC= L*4 =3
, AREAR AREAC= L*L
SI NO
2
¿Deseas PERIMETROC
continuar , AREAC “FIN DEL
S/N?, R
PROGRAM
A
SI ¿Deseas
1 R= S NO continuar
S/N?, R 3
3 NO SI
R= S 1
FIN
NO
PSEUDOCODIGO
INICIO
PRACTICA 28: Realiza el programa del diagrama de flujo y Pseudocódigo anterior que
calcula el AREA Y PERIMETRO de un TRIANGULO Y UN CUADRADO.
INICIO
N =1
NO
N<=10 FIN
SI
N = N+1
La instrucción do-while tiene un comportamiento similar a while, sólo que en este caso
primero se ejecuta el bloque de instrucciones y después se evalúa la condición. Con esto se
asegura que el bloque se ejecutará al menos una vez.
Esta es la sintaxis de la instrucción do-while :
do
bloque;
while(condición);
EJERCICIO 31: El siguiente diagrama de flujo y programa que calcule la suma consecutiva del
1 al 10
INICIO
N =1
SUMA=0
NO Suma FIN
N<=10
SI
Suma =
Suma + n
n=n+
// Programa que calcule la suma consecutiva del 1 al 10
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
main()
{
int suma,n,num;
suma=0;
n=1;
do
{
suma=suma+n;
n=n++;
}
while(n<=10);
cout<<"\n***La suma consecutiva de los números del 1 al 10 es:"<<suma;
getch();
return 0;
}
PRACTICA 31: Realizar un diagrama de flujo y programa que calcule la suma consecutiva que
empiece y finalice lo números dados a través del teclado, utilice la sentencia do-while.
PRACTICA 33: Realizar un diagrama de flujo y programa utilizando la sentencia while o do-
while que pida 10 enteros positivos e imprima en una lista los números pares y en
otra los números impares.
Los bloques de inicialización, condición y control no son obligatorios, pero sí lo son los tres puntos
y coma que los separan; de tal suerte que la forma mínima de una instrucción for
quedaría así:
INICIO
Fact = 1
Num
SI Fact
X=1 FIN
X>num NO
X= X+1
FACT = FACT * X
PRÁCTICA 35: Realizar un diagrama de flujo y Programa que imprima las tablas de
multiplicar del 1 al 10, utilizando la sentencia for.
A) Un arreglo es una variable que puede almacenar uno o más valores del mismo tipo.
B) Para declarar un arreglo debe especificar el tipo, nombre y numero de valores que
almacenara el arreglo.
C) Lo s valores dentro del arreglo se les denomina elementos del arreglo
D) El primer elemento del arreglo se almacena en el apuntador 0 del arreglo.
E) Los programas a menudo utilizan variables indexadas para tener un acceso a los
elementos de un arreglo.
F) Cuando una función recibe un arreglo como parámetro este deberá especificar su tipo
y nombre, más no el tamaño del arreglo.
G) Cuando un programa pasa un arreglo para hacer una función el parámetro que se le
indique ala función será el número de elementos que contiene el arreglo.
Los elementos de los arreglos son variables de algún tipo dado, que al compartir el mismo nombre
pueden ser tratadas como una sola entidad.
La sintaxis para la declaración de un arreglo es la siguiente:
DECLARACION RESULTADO
En este caso, se declara un arreglo de 5 variables de tipo entero agrupadas con el nombre vector,
las cuales pueden representarse con la Siguiente figura
Representación de un arreglo
Como puede observarse en la figura anterior, el primer subíndice tiene valor cero y el
último tiene valor cuatro. Lo anterior se debe a que, en C++, el primer subíndice siempre
vale cero y el último tiene un valor menor en uno que el valor de la dimensión del
arreglo.
Una vez declarado el arreglo, se pueden asignar valores a cada uno de sus elementos,
como se muestra enseguida:
vector[0] = 100 ;
vector[1] = 101 ;
vector[2] = 102 ;
vector[3] = 103 ;
vector[4] = 104 ;
INICIO INICIO
Variables N, X
Arreglo N [10]
Para hasta que x > 10
N [10] Escribir “Anota un numero:
Leer N [X]
Imprimir N [X]
x = x+1
X=1 Fin para
SI FIN FIN
X>10
NO
X= X+1
N [X]
N [X]
/*Programa que imprimirá 10 números dados a través del teclado, utilizando un arreglo unidimensional*/
#include <iostream.h>
#include <conio.h>
#include <math.h>
main()
{
int lista [10];
int x;
suma =0;
for(x=1;x<10;x++){
cout<<"Teclea un numero:"<<x<<"=";
cin>>lista [x];
}
for(x=0;x<8;x++){
cout <<lista[x];
cin>>lista[x];
cout<<"\n";
}
getch();
return 0;
}
DEFINICION:
Cuando se manejan arreglos de varias dimensiones, debe recordarse que el subíndice de cada
una de ellas inicia con un valor 0, como se observa en el siguiente listado.
#include <iostream.h>
#include <conio.h>
void main(void) {
int matriz[3][4];
clrscr();
for(int x=0 ; x < 3 x++) {
for(int y=0 y< 4 ; y++) {
matriz[x][y]=x+y+1 ;
gotoxy(y+1,x+1);
cout matriz[x][y]; }
}
}
Listado Arreglo con dos dimensiones. El resultado de ejecutar el programa del listado es
el siguiente:
1234
2345
3456
El arreglo matriz puede representarse con la siguente figura .
Como puede verse, la primera forma es mucho más compacta, aunque, como en muchas de las
instrucciones de C++, la brevedad del código sacrifica la claridad.
EJEMPLO 37:
El siguiente diagrama de flujo, Pseudocódigo y programa imprime los numeras del 1 al 12 en
una matriz de 3 X 4, utilizando un arreglo BIDIMENSIONAL.
DIAGRAMA DE FLUJO
INICIO
N [3][4]
. REN=10
COL= 30
X=1 SI
FIN
X>3
NO
X=X+1
PSEUDOCODIGO
INICIO
REN=REN +5 SI Variables N, REN, COL
Y=1
Arreglo N [3][4]
REN= 10
NO Y >4 COL= 30
Para hasta que x > 3
Y=Y +1 REN= REN +5
Para hasta que x > 4
Imprimir N[X][Y]
I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1
L.S.C. MAGDALENA ESCARCIA LOZANO COL = COL+10
4 SEMESTRE Fin para
L.S.C. SELMA ALBUQUERQUE WEXEL Fin para
FEB-JUL´2010 FIN
L.S.C. MA EUGENIA ACUÑA REYES
SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE 46
PROBLEMAS
N[X][Y]
COL=COL +10
//ARREGLO BIDIMENSIONAL
#include <iostream.h>
#include <conio.h>
#include <math.h>
main()
{
int ren,col,j,i;
int num[3][4];
clrscr();
for(j=0;j<3;j++)
{ for(i=0;i<4;i++){
cout<<"Teclea el numero del renglon..."<<i<<"...columna..."<<j<<"...";
cin>>num[i][j]; }
}
clrscr( );
ren=10;col=30;
gotoxy(20,3);cout<<"Tu tabla es la siguiente:";
for(j=0;j<3;j++){
for(i=0;i<4;i++){
gotoxy(col,ren);
cout<<num[i][j];
col=col+5; }
col=30;
ren=ren+3; }
getch();
return 0;
}
PRACTICA 37: Realizar un diagrama de flujo y programa que imprime 25 numeras que das a
través del teclado utiliza un arreglo BIDIMENSIONAL DE 5 X 5.
PRACTICA 38: Realizar un diagrama de flujo y programa que te pida e imprima los nombres
de las materias y maestros, utilizando un arreglo BIDIMENSIONAL.