Upload
agardel-dk
View
6
Download
0
Embed Size (px)
DESCRIPTION
algoritmo pseudocodigos y mas para que seas un programador como Gary Mckinnon
Citation preview
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 1/45
0 Más Siguiente blog» Crear un blog Acceder
ALGORITMOEn la ciencia de la computación y en la programación, los algoritmos son más importantes que los lenguajes de programación o lascomputadoras. Un lenguaje de programación es tan solo un medio para expresar un algoritmo y una computadora es solo un procesadorpara ejecutarlo. Tanto el lenguaje de programación como la computadora son los medios para obtener un fin: conseguir que el algoritmose ejecute y se efectúe el proceso correspondiente.
Effects For Images and Links
**Create Link Effect**
Archivo del blog
▼ 2007 (64)
▼ noviembre (64)
CONCEPTOS PREVIOS IMPORTANTES
¿QUÉ ES LA COMPUTADORA?
¿QUÉ ES UN DATO?
¿QUÉ ES INFORMACIÓN?
Organización Física de laComputadora - HARDWARE
Periférico o Dispositivos deEntrada/Salida
Memoria Central
Dispositivos de AlmacenamientoSecundario
LENGUAJE DE PROGRAMACIÓN
HISTORIA DE LOS ALGORITMOS
DISEÑO DE LENGUAJESALGORITMICOS
DIAGRAMA DE FLUJO
PSEUDOCÓDIGO
EJERCICIOS
EJERCICIO PRÁCTICA Nº1
HISTORIA DEL COMPUTADOR
ESTRUCTURA DE UN SISTEMA DECOMPUTO
ESTRUCTURA DEL C.P.U
DEFINICION DE COMPILADOR
OPERADORES ARITMETICOS
OPERADORES DIV Y MOD
OPERADORES RACIONALES
OPERADORES LÓGICOS
CONSTANTES Y VARIABLES
EJEMPLO:
EJERCICIO PRÁCTICA Nº2
EVOLUCION DE LOS LENGUAJES DEPROGRAMACION
ESTRUCTURAS BASICAS DEPROGRAMACIÓN
LENGUAJE C
TIPOS DE DATOS
FUNCIONES MATEMATICAS #include
Publicado por TRABAJO DE INVESTIGACIÓN en 20:28
MARTES, 20 DE NOVIEMBRE DE 2007
CONCEPTOS PREVIOS IMPORTANTES
LENGUAJE
Conjunto de símbolos que sirven para transmitir un mensaje.
LA COMUNICACIÓN
Proceso que requiere una serie de reglas para transmitir el
mensaje y existen 4 elementos importantes: Emisor, Receptor,
Medio de comunicación y mensaje.
No hay comentarios:
¿QUÉ ES LA COMPUTADORA?
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 2/45
Mi foto
FUNCIONES MATEMATICAS #includeTRIGONOMETRICAS ac...
ARCHIVOS DE CABECERA
OPERADORES ARITMETICOS Y DEASIGNACION
Operadores de asignación
Jerarquía de los operadores
OPERADORES RELACIONALES
OPERADORES LOGICOS
EJERCICIO: PRACTICA Nº3
ESTRUCTURA SELECTIVA OCONDICIONAL
EJEMPLOS
ESTRUCTURAS SELECTIVAS DEALTERNATIVA MÚLTIPLE
EJEMPLOS
SINTAXIS: SWITCH
EJEMPLOS
EJERCICIOS PRÁCTICA Nº5
ESTRUCTURAS REPETITIVAS
SENTENCIA WHILE
SENTENCIA: DO…WHILE
SENTENCIA: FOR
EJEMPLO: SENTENCIA FOR
EJERCICIOS: PRÁCTICA Nº6
SEGUNDA UNIDAD
FUNCIONES Y PROCEDIMIENTOS
MÓDULO PRINCIPAL
EJEMPLO DE FUNCIÓN
EJEMPLO: VISIÓN COMPLETA
EJEMPLO: PROMEDIO DE NOTAS
EJEMPLO: Selecciona la Mayor Talla
VECTORES
EJERCICIO SOBRE VECTORES
MATRICES
EJERCICIOS SOBRE MATRICES
Concluciones
BIBLIOGRAFIA
Datos personales
TRABAJO DE INVESTIGACIÓN
"UNIVERSIDAD CESAR VALLEJO" Blogger
creado por la alumna de la facultad de:
"Ingenieria de Sistemas" - Claudio Salas,
Jackeline.
Ver todo mi perfil
Publicado por TRABAJO DE INVESTIGACIÓN en 20:26
Publicado por TRABAJO DE INVESTIGACIÓN en 20:25
Publicado por TRABAJO DE INVESTIGACIÓN en 20:24
Publicado por TRABAJO DE INVESTIGACIÓN en 20:22
Es una maquina electrónica digital capaz de procesar datos a partir de ungrupo de instrucciones denominado programa, proporcionando unainformación resultante.
No hay comentarios:
¿QUÉ ES UN DATO?
Es un conjunto de símbolos utilizados para expresar: un valor numérico, unhecho, un objeto o una idea, para ser objeto de tratamiento.
No hay comentarios:
¿QUÉ ES INFORMACIÓN?
Es la transformación de los elementos procesados.
Los datos de entrada se convierten en información significativa
No hay comentarios:
Organización Física de la Computadora -HARDWARE
Una computadora necesita:
•Aceptar la entrada y visualizar la salida.•Almacenar la información en un formato consistente.•Ejecutar las operaciones aritméticas o lógicas.•Monitorizar, controlar y dirigir las operaciones del sistema.
1 comentario:
Periférico o Dispositivos de Entrada/Salida
•Estos dispositivos permiten al usuario comunicarse con la computadora.Algunos dispositivos típicos de E/S son el teclado, la impresora, monitor,etc.
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 3/45
Publicado por TRABAJO DE INVESTIGACIÓN en 20:17
Publicado por TRABAJO DE INVESTIGACIÓN en 20:15
Publicado por TRABAJO DE INVESTIGACIÓN en 20:14
No hay comentarios:
Memoria Central
•La información procesada por la UCP se almacena normalmente en lamemoria central hasta que se terminan los cálculos.
No hay comentarios:
Dispositivos de Almacenamiento Secundario
•Usados para almacenar grandes cantidades de información.
•Los datos se guardan en dispositivos de almacenamiento auxiliar y luegopara ser procesados por la CPU, tienen que llevarse a la memoria central.
No hay comentarios:
LENGUAJE DE PROGRAMACIÓN
Es un conjunto de símbolos, caracteres y reglas (programas) que permitena las personas comunicarse con la computadora.
CLASES DE LENGUAJE DE PROGRAMACION:
1. LENGUAJE DE MAQUINA.- Instrucciones que son entendidasdirectamente por el computador.
2. LENGUAJE DE BAJO NIVEL (ENSAMBLADOR) .- Son código
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 4/45
Publicado por TRABAJO DE INVESTIGACIÓN en 20:06
Publicado por TRABAJO DE INVESTIGACIÓN en 20:04
alfabéticos conocidos como mnemo-técnicos para las operaciones ydirecciones simbólicas.
3. LENGUAJE DE ALTO NIVEL (APLICATIVOS) .- Son instrucciones osentencias mas próximos al humano normal, lo que facilita la comunicacióncon el computador estos pueden ser (BASIC, Pascal, Delphi, Visual Basic,Visual Foxpro, etc.) ´
No hay comentarios:
HISTORIA DE LOS ALGORITMOS
La palabra algoritmo proviene del nombre del matemático llamadoMuhammad ibn Musa al-Jwarizmi que vivió entre los siglos VIII y IX. Sutrabajo consistió en preservar y difundir el conocimiento de la antiguaGrecia y de la India. Sus libros eran de fácil comprensión, de ahí que suprincipal logro no fuera el de crear nuevos teoremas o corrientes depensamiento, sino el de simplificar la matemática a punto tal que pudieranser comprendidas y aplicadas por un mayor número de personas. Tambiénestudió la manera de reducir las operaciones que formaban el cálculo. Espor esto que aun no siendo el creador del primer algoritmo, el conceptolleva aunque no su nombre, sí su pseudónimo.
DEFINICIÓN DE ALGORITMO
-Un algoritmo es una serie de pasos organizados que describe el procesoque se debe seguir, para dar solución a un problema específico.-Un algoritmo puede definir una secuencia finita de instrucciones cada unade las cuales tiene un significado claro y puede ser efectuada con unacantidad finita de esfuerzo en una longitud de tiempo también finito.
Estructura Básica de un Algoritmo:
inicio
datos de entrada (operaciones básicas)
procesamiento de los datos
datos de salida
fin
No hay comentarios:
DISEÑO DE LENGUAJES ALGORITMICOS
Grafica: Diagramas de Flujo, N-S
Narrativa: Pseudo Código
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 5/45
Publicado por TRABAJO DE INVESTIGACIÓN en 20:03
Publicado por TRABAJO DE INVESTIGACIÓN en 19:56
Publicado por TRABAJO DE INVESTIGACIÓN en 19:54
Código: Programa
No hay comentarios:
DIAGRAMA DE FLUJO
Un Diagrama de flujo es la representación detallada en forma gráfica de un
algoritmo.
VENTAJAS:
Permite Visualizar mejor en la complejidad de un algoritmo.
Fácil de Entender.
SIMBOLOGIA PARA DIAGRAMAS DE FLUJO(ISO): INTERNATIONAL
ORGANIZATION FOR STANDARDIZATION-ANSI:AMERICAN NATIONAL
STANDARS INSTITUTE.
No hay comentarios:
PSEUDOCÓDIGO
Es la representación narrativa de los pasos que debe seguir un algoritmopara dar solución a un problema determinado. El pseudocódigo utilizapalabras que indican el proceso a realizar.
VENTAJAS DE USAR PSEUDOCÓGIGOS
Ocupa menos espacio en una hoja de papel.
Permite representar en forma fácil operaciones repetitivas
complejas.
Es muy fácil pasar de pseudo código a un programa en algún
lenguaje de programación.
Si se siguen las reglas se puede observar claramente los niveles
que tiene cada operación.
1 comentario:
EJERCICIOS
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 6/45
Realizar un algoritmo que permita hallar la suma de dos números
ingresados por teclado.
Nota: Los algoritmos se expresan en Pseudocodigo y Diagramas
de Flujo.
Pseudocodigo:
Inicio
Variables:
A,B,S: Entero
Leer (A)
Leer (B)
R=A+B
Escribir (R)
Fin
Realizar un algoritmo que permita hallar el área de un círculo :
Pseudocodigo:
Inicio
Variables:
R, AC: Real
Leer (R)
AC=3.1416*R*R
Escribir (AC)
Fin
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 7/45
Realizar un Algoritmo que permita leer Nombre del cliente,
Producto, Precio, Cantidad, luego calcular y presentar el Total, Igv
y el Neto
Pseudocodigo:
Inicio
Variables
NomCli, Prod : Cadena
Cantidad : Entero
Precio, Total, Igv, Neto : Real
Leer (NomCli)
Leer (Prod)
Leer (Precio)
Leer (Cantidad)
Total = Precio * Cantidad
Igv = Total * 0.19
Neto = Total + Igv
Escribir (Total)
Escribir (Igv)
Escribir (Neto)
Fin
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 8/45
Publicado por TRABAJO DE INVESTIGACIÓN en 19:34
Publicado por TRABAJO DE INVESTIGACIÓN en 19:27
No hay comentarios:
EJERCICIO PRÁCTICA Nº1
1. Realizar un algoritmo que permita leer 2 números, luego mostrarla Suma, Resta y Multiplicación.
#includevoid main (){float A,B,S,R,M;cout<<"Leer A:";cin>>A;cout<<"Leer B:";cin>>B;S=A+B;R=A-B;M=A*B;cout<<"la suma es:"<cout<<"la resta es:"<cout<<"el producto es:"<}
2. Realizar un algoritmo que permita hallar el área de unRectángulo.
#includevoid main (){float A,B,D;cout<<"Leer A:";cin>>A;cout<<"Leer B:";cin>>B;D=A*B;cout<<"el área es:"<}
3. Realizar un algoritmo que permita hallar la longitud de unacircunferencia
#includevoid main (){float R,LC;cout<<"Leer R:";cin>>R;LC=2*3.14*R;cout<<"la longitud de la circunferencia es:"<}
4. Realizar un algoritmo que permita hallar el área de un Triángulo.
#includevoid main (){float B,A,D;cout<<"Leer B:";cin>>B;cout<<"Leer D:";cin>>D;A=B*D/2;cout<<"el area de un triangulo es:"<}
5. Realizar un algoritmo que permita leer 3 notas, luego calcular elPromedio.
#includevoid main (){float P,A,B,C;cout<<"Leer A:";cin>>A;cout<<"Leer B:";cin>>B;cout<<"Leer C:";cin>>C;P=(A+B+C)/3;cout<<"el promedio es:"<}
No hay comentarios:
HISTORIA DEL COMPUTADOR
En 1670 el filósofo y matemático alemán Gottfried Wilhelm Leibniz
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 9/45
perfeccionó esta máquina e inventó una que también podía multiplicar.El inventor francés Joseph Marie Jacquard, al diseñar un telar automático,utilizó delgadas placas de madera perforadas para controlar el tejidoutilizado en los diseños complejos. Durante la década de 1880 elestadístico estadounidense Herman Hollerith concibió la idea de utilizartarjetas perforadas, similares a las placas de Jacquard, para procesardatos. Hollerith consiguió compilar la información estadística destinada alcenso de población de 1890 de Estados Unidos mediante la utilización deun sistema que hacía pasar tarjetas perforadas sobre contactos eléctricos.También en el siglo XIX el matemático e inventor británico Charles Babbageelaboró los principios de la computadora digital moderna. Inventó una seriede máquinas, como la máquina diferencial, diseñadas para solucionarproblemas matemáticos complejos. Muchos historiadores consideran aBabbage y a su socia, la matemática británica Augusta Ada Byron (1815-1852), hija del poeta inglés Lord Byron, como a los verdaderos inventoresde la computadora digital moderna. La tecnología de aquella época no eracapaz de trasladar a la práctica sus acertados conceptos; pero una de susinvenciones, la máquina analítica, ya tenía muchas de las característicasde un ordenador moderno. Incluía una corriente, o flujo de entrada en formade paquete de tarjetas perforadas, una memoria para guardar los datos, unprocesador para las operaciones matemáticas y una impresora para hacerpermanente el registro.Los ordenadores analógicos comenzaron a construirse a principios del sigloXX. Los primeros modelos realizaban los cálculos mediante ejes yengranajes giratorios. Con estas máquinas se evaluaban lasaproximaciones numéricas de ecuaciones demasiado difíciles como parapoder ser resueltas mediante otros métodos. Durante las dos guerrasmundiales se utilizaron sistemas informáticos analógicos, primeromecánicos y más tarde eléctricos, para predecir la trayectoria de lostorpedos en los submarinos y para el manejo a distancia de las bombas enla aviación.Durante la II Guerra Mundial (1939-1945), un equipo de científicos ymatemáticos que trabajaban en Bletchley Park, al norte de Londres,crearon lo que se consideró el primer ordenador digital totalmenteelectrónico: el Colossus. Hacia diciembre de 1943 el Colossus, queincorporaba 1.500 válvulas o tubos de vacío, era ya operativo. Fue utilizadopor el equipo dirigido por Alan Turing para descodificar los mensajes deradio cifrados de los alemanes. En 1939 y con independencia de esteproyecto, John Atanasoff y Clifford Berry ya habían construido un prototipode máquina electrónica en el Iowa State College (EEUU). Este prototipo ylas investigaciones posteriores se realizaron en el anonimato, y más tardequedaron eclipsadas por el desarrollo del Calculador e integrador numéricoelectrónico (en inglés ENIAC, Electronic Numerical Integrator andComputer) en 1946. El ENIAC, que según se demostró se basaba en granmedida en el ordenador Atanasoff-Berry (en inglés ABC, Atanasoff-BerryComputer), obtuvo una patente que caducó en 1973, varias décadas mástarde.El ENIAC contenía 18.000 válvulas de vacío y tenía una velocidad de varioscientos de multiplicaciones por minuto, pero su programa estaba conectadoal procesador y debía ser modificado manualmente. Se construyó unsucesor del ENIAC con un almacenamiento de programa que estababasado en los conceptos del matemático húngaro-estadounidense John vonNeumann. Las instrucciones se almacenaban dentro de una llamadamemoria, lo que liberaba al ordenador de las limitaciones de velocidad dellector de cinta de papel durante la ejecución y permitía resolver problemassin necesidad de volver a conectarse al ordenador.A finales de la década de 1950 el uso del transistor en los ordenadoresmarcó el advenimiento de elementos lógicos más pequeños, rápidos yversátiles de lo que permitían las máquinas con válvulas. Como lostransistores utilizan mucha menos energía y tienen una vida útil másprolongada, a su desarrollo se debió el nacimiento de máquinas másperfeccionadas, que fueron llamadas ordenadores o computadoras desegunda generación. Los componentes se hicieron más pequeños, asícomo los espacios entre ellos, por lo que la fabricación del sistemaresultaba más barata.A finales de la década de 1960 apareció el circuito integrado (CI), queposibilitó la fabricación de varios transistores en un único sustrato de silicioen el que los cables de interconexión iban soldados. El circuito integradopermitió una posterior reducción del precio, el tamaño y los porcentajes de
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 10/45
Publicado por TRABAJO DE INVESTIGACIÓN en 19:14
Publicado por TRABAJO DE INVESTIGACIÓN en 19:09
error. El microprocesador se convirtió en una realidad a mediados de ladécada de 1970, con la introducción del circuito de integración a granescala (LSI, acrónimo de Large Scale Integrated) y, más tarde, con elcircuito de integración a mayor escala (VLSI, acrónimo de Very LargeScale Integrated), con varios miles de transistores interconectadossoldados sobre un único sustrato de silicio.
No hay comentarios:
ESTRUCTURA DE UN SISTEMA DE COMPUTO
Un sistema de computo es un conjunto de elementos fisicos y electronicos(hardware), los cuales funcionan ordenadamente bajo el control deprogramas (software); ambos componentes se comportan como un todo esposible establecer contacto con ellos gracias al usuario o persona quemaneja el sistema.
ELEMENTOS DE UN SISTEMA DE COMPUTO:
No hay comentarios:
ESTRUCTURA DEL C.P.U
LOS ELEMENTOS BASICOS CONSTITUTIVOS DE UN PROGRAMA OALGORITMO SON:
PALABRAS RESERVADAS (INICIO,FIN, SI-ENTONCES,…ETC.)
IDENTIFICADORES (NOMBRES DE VARIABLES,
Procedimientos,FUNCIONES,..ETC)
CARACTERES ESPECIALES (COMA, APOSTROFO,ETC)
CONSTANTES
VARIABLES
EXPRESIONES
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 11/45
Publicado por TRABAJO DE INVESTIGACIÓN en 18:51
INSTRUCCIONES
OTROS ELEMENTOS DEL PROGRAMA:
BUCLES
CONTADORES
ACUMULADORES
INTERRUPTORES
ESTRUCTURAS
1. SECUENCIALES
2. SELECTIVAS
3. REPETITIVAS
No hay comentarios:
DEFINICION DE COMPILADOR
UN COMPILADOR ES UN PROGRAMA QUE TRADUCE UN PROGRAMAEN LENGUAJE DE ALTO NIVEL, TAL COMO C / C++ /JAVA , ETC ENUN PROGRAMA DE UN LENGUAJE MAS SENCILLO QUE LACOMPUTADORA PUEDE COMPRENDER.
PART ES DEL COMPILADOR:
ESCANER
Conocido también como analizador léxico, es el componente
que clasifica cada instrucción y los somete a un diccionario
nos dice si hay expresiones escritas incorrectamente.
PARSER
También conocido como analizador sintáctico, es el
componente que verifica el orden adecuado de las
instrucciones de un programa, nos av isa si hay alguna
incoherencia en la secuencia de las instrucciones.
SINT ET IZADOR
Es el modulo que genera el codigo binario (0011101001) que
sera ejecutado por el ordenador o computadora.
PROGRAMA OBJET O (.OBJ)
Es el programa traducido por el compilador interprete
(necesita del programa de alto nivel) a lenguaje de bajo nivel.
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 12/45
Publicado por TRABAJO DE INVESTIGACIÓN en 18:42
Publicado por TRABAJO DE INVESTIGACIÓN en 18:33
ENLAZADOR O LINKEADOR
Es el programa que pasa el programa objeto a programa
ejecutable.
PROGRAMA EJECUT ABLE (.EXE)
Es el programa traducido por el compilador traductor (no
necesita del programa de alto nivel) para pasar a lenguaje de
bajo nivel.
No hay comentarios:
OPERADORES ARITMETICOS
•Son aquéllos que permiten la realización de cálculos aritméticos. Utilizanoperándos numéricos y proporcionan resultados numéricos.
•En caso de realizar mas de una operación aritmética, utilizar losparéntesis para agrupar las operaciones que se realizarán primero.
Por ejemplo:•4 + 12 /2 = 10 (sin agrupar)•(4 + 12) /2 = 8 (con agrupador)
No hay comentarios:
OPERADORES DIV Y MOD
El símbolo / se utiliza para la división real, y el operador div representa ladivisión entera.
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 13/45
Publicado por TRABAJO DE INVESTIGACIÓN en 18:29
Publicado por TRABAJO DE INVESTIGACIÓN en 18:27
No hay comentarios:
OPERADORES RACIONALES
•Permiten realizar comparaciones de valores de tipo numérico o carácter.Estos operadores sirven para expresar las condiciones en los algoritmos.Proporcionan resultados lógicos.
No hay comentarios:
OPERADORES LÓGICOS
•Son aquéllos que permiten la combinación de condiciones para formar unasola expresión lógica.•Proporcionan resultados lógicos.
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 14/45
Publicado por TRABAJO DE INVESTIGACIÓN en 18:20
Publicado por TRABAJO DE INVESTIGACIÓN en 18:03
No hay comentarios:
CONSTANTES Y VARIABLES
Una Constante es aquélla que no cambia de valor durante la ejecución deun programa (o comprobación de un algoritmo en este caso). Se representaen la forma descrita para cada categoría.
Las Variables son aquéllas que pueden modificar su valor durante laejecución de un programa.
No hay comentarios:
EJEMPLO:
Calcular el salario de un trabajador, conociendo el número de horas
trabajadas, el precio de la hora de trabajo y considerando unos
descuentos fijos al sueldo por concepto de impuestos del 20%.
Pseudocodigo
Inicio
Var: nh,ph,neto,desc,pago:Real
Escribir (“Ingresar horas trabajadas”)
Leer (nh)
Escribir (“Ingresar precio por hora”)
Leer (ph)
neto nh * ph
desc neto * 0.20
pago neto - desc
Escribir (“El salario es:”, pago)
Código C++
#include
Void main( )
{
float nh,ph,neto,desc,pago;
cout<<“Ingresar horas trabajadas”< cin>> nh;
cout<<“Ingresar precio por hora”< cin>>ph;
neto = nh * ph;
desc = neto * 0.20;
pago = neto – desc;
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 15/45
Publicado por TRABAJO DE INVESTIGACIÓN en 18:00
cout<<“ El salario es:”<}
No hay comentarios:
EJERCICIO PRÁCTICA Nº2
1. Sean los datos a, b, c, d. Haga diagramas de flujo independientespara leer los datos, resolver e imprimir el resultado de cada uno delos siguientes incisos:
a) Escribir los datos en orden inverso.
b) Escribir los datos en orden inverso, omitiendo el segundo dato.
c) Calcular: (a + b-c)/d
d) Calcular: ( (a - b)2 )/c ((a - b)3)/d
#include void main (){int a,b,c,d;double r1, r2;cout<<"a=";cin>>a;cout<<"b=";cin>>b;cout<<"c=";cin>>c;cout<<"d=";cin>>d;r1=(a=b=c)/d;r2=((a-b)*(a-b)/c)-((a-b)*(a-b)*(a-b)/d/a);cout<<"inciso(a)="<cout<<"inciso(b)="<cout<<"inciso(c)="<cout<<"inciso(d)="<}
2. Construir un algoritmo que calcule el monto que adeuda uncliente que compra al crédito, sabiendo que el monto de comprarecibe un incremento del 18% de impuesto, así como, de S/.5.00 porcada letra que fracciona mensual.#includevoid main (){int p,nl;float R;cout<<"p=";cin>>p;cout<<"nl=";cin>>nl;R=1.18*p+5*nl;cout<<"el monto es:"<}3. En el sistema de numeración ingles la estatura de una personaesta dada por la suma de los pies y pulgadas que tiene. Así porejemplo una persona puede medir 5 pies con 4 pulgadas. Construirun algoritmo que exprese una medida dada en pies y pulgadas ametros. Se sabe que: 1 pie = 12 pulgadas, 1 pulgada = 2.54 cm y 1metro = 100 cm.#includevoid main(){float Npies,Npulg,Nmetros;cout<<"Npies=";cin>>Npies;cout<<"Npulg=";cin>>Npulg;
Nmetros=Npies*12*2.54/100+Npulg+2.54/100;cout<<"La estatura de metros es="<}4. Diseñe un algoritmo para convertir una cantidad dada enpulgadas a pies, yardas y centímetros. Se sabe que:1 yarda = 3 pies1 pie = 12 pulgadas1 pulgada = 2.54 centímetros1 metro = 100 centímetros#include void main ()
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 16/45
{float Npulg,Npies,Nyardas,Ncenti;cout<<"Npulg";cin>>Npulg;Npies=Npulg/12;Nyardas=Npulg/36;Ncenti=Npulg*2.54;
cout<<"el numero de pies"<cout<<"el numero de yardas"<cout<<"elnumero de centi"<}5. Diseñe el algoritmo que sirva para determinar el valor de lahipotenusa de un triangulo rectángulo aplicando el teorema dePitágoras, el perímetro y el área conociendo el valor de sus catetos.#include #include void main(){float a,b,c,p,A;cout<<"Cateto a:"; cin>>a;cout<<"Cateto b:"; cin>>b;c=sqrt(a*a+b*b);p=a+b+c;A=b*a/2;cout<<"La hipotenusa es:"<cout<<"El perimetro es:" <cout<<"El area es:"<}6. Tres personas deciden invertir su dinero para fundar unaempresa. Cada una de ellas invierte una cantidad distinta. Diseñe elalgoritmo que sirva para obtener el porcentaje que cada quieninvierte con respecto a la cantidad total invertida.#includevoid main(){float D,a,b,c,Ca,Cb,Cc;cout<<"Leer: a" ; cin>>a;cout<<"Leer: b" ; cin>>b;cout<<"Leer: c" ; cin>>c;Ca=(100*a)/D;Cb=(100*b)/D;Cc=(100*c)/D;cout<<"Elproducto es (Ca):"< cout<<"Elproducto es(Cb):"<cout<<"Elproducto es(Cc):"< }7. Dado un número natural de 4 cifras diseñe una algoritmo quepermita obtener el revés del número. Así, si se lee el numero 2358,el algoritmo deberá imprimir 8532.#includevoidmain(){int N,a,b,c,d,inv;cout<<"leer numero=";cin>>N;a=N/1000;N=N%1000;b=N/100;N=N%100c=N/10;d=N%10;inv=d*1000+c*100+b*10+a;cout<<"el numero invertido es=";<}8. Un hospital a recibido una donación especial que será repartidade la siguiente manera: 45% para Medicina General, 30% paraCardiología, 15% para Pediatría y el resto para Traumatología.Diseñe un algoritmo que determine cuanto recibirá cada área.#includevoid main(){float C,Mg,A,Pe,Tr;cout<<"Leer: C" ; cin>>C;Mg=(45*C)/100A=(30*C)/100Pe=(15*C)/100Tr=(10*C)/100
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 17/45
Publicado por TRABAJO DE INVESTIGACIÓN en 17:47
Publicado por TRABAJO DE INVESTIGACIÓN en 17:42
cout<<"el producto es:"< cout<<"el producto es:"< cout<<"el producto es:"< cout<<"el producto es:"< }
9. Diseñe un algoritmo que determine el porcentaje de varones y demujeres que hay en un salón de clase.#includevoid main(){float a,v,m,pv,pmcout<<"Leer: a" ; cin>>a;cout<<"Leer: v" ; cin>>v;cout<<"Leer: m" ; cin>>m;pv=(v*100)/apm=(m*100)/acout<<"inciso(pv):"< cout<<"inciso(pm):"< }
No hay comentarios:
EVOLUCION DE LOS LENGUAJES DEPROGRAMACION
COBOL (1960)
FORTRAN IV (1961)
BASIC (1964)
LOGO (1967)
PASCAL (1971)
C (1972) -à PLATAFORMA DE UNIX,SOLARIS
ADA (1979)
C++ (1980) à PLATAFORMA DE LINUX, MacOS
JAVA (1995)
C# (2000) -à presentado por MICROSOFT
No hay comentarios:
ESTRUCTURAS BASICAS DE PROGRAMACIÓN
Secuenciales (Accion por Accion)
Selectivas (Con Condiciones)
Repetitivas o Iterativas (Con Bucles de Retroalimentación)
Solo se necesita estas tres estructuras para hacer cualquier programa
informático.
SENTENCIAS DE PROGRAMACION
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 18/45
Publicado por TRABAJO DE INVESTIGACIÓN en 17:36
SELECTIVA
IF (SI)
ELSE (SINO)
SWITH (SEGÚN SEA)
REPETITIVA
FOR (DESDE)
WHILE (MIENTRAS)
DO WHILE (HACER MIENTRAS)
BIFURCACION
BREAK (ROMPER)
RETURN (VOLVER)No hay comentarios:
LENGUAJE C
C es un lenguaje de programación de propósito general que ofreceeconomía sintáctica, control de flujo y estructuras sencillas y un buenconjunto de operadores. Es un lenguaje potente, con un campo deaplicación ilimitado y sobre todo, se aprende rápidamente. Este lenguaje hasido estrechamente ligado al sistema operativo UNIX, puesto que fuerondesarrollados conjuntamente. Sin embargo, este lenguaje no está ligado aningún sistema operativo ni a ninguna máquina concreta. Se le suele llamarlenguaje de programación de sistemas debido a su utilidad para escribircompiladores y sistemas operativos, aunque de igual forma se puedendesarrollar cualquier tipo de aplicación.
La base del C proviene del BCPL, escrito por Martin Richards, y del Bescrito por Ken Thompson en 1970 para el primer sistema UNIX. Estos sonlenguajes sin tipos, al contrario que el C que proporciona varios tipos dedatos. El primer compilador de C fue escrito por Dennis Ritchie.
CARACTERISTICAS DEL LENGUAJE C:El lenguaje C se conoce como un lenguaje compilado.Existen dos tipos de lenguaje:interpretados y compilados.Los interpretados son aquellos que necesitan del código fuente parafuncionar (Por ejem: Basic).Los compilados convierten el código fuente en un fichero objeto y éste enun ejecutable. Este es el caso del lenguaje C.
Podemos decir que el lenguaje C es un lenguaje de nivel medio, ya quecombina elementos de lenguaje de alto nivel con la funcionalidad dellenguaje ensamblador. Es un lenguaje estructurado, ya que permite crearprocedimientos en bloques dentro de otros procedimientos. Hay quedestacar que el C es un lenguaje portable, ya que permite utilizar el mismocódigo en diferentes equipos y sistemas informáticos: el lenguaje esindependiente de la arquitectura de cualquier máquina en particular.
ESTRUCTURA DE UN PROGRAMA EN C
Todo programa en C consta de una o más funciones, una de las cuales sellama main. Todo programa en C debe contener al menos la función main(),desde la cual es posible llamar a otras funciones.Cada función se designa con una cabecera, compuesta por el nombre de lamisma y la lista de argumentos (si los hubiese), la declaración de lasvariables a utilizar y la secuencia de sentencias a ejecutar.
Ejemplo:directivasconstantesdeclaraciones de funcionesdeclaraciones de variables globalesmain( )
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 19/45
Publicado por TRABAJO DE INVESTIGACIÓN en 17:31
Publicado por TRABAJO DE INVESTIGACIÓN en 17:28
{declaración de variables localescuerpo de la función principal}funcion_1( ){declaración de variables localescuerpo de la función_1}
No hay comentarios:
TIPOS DE DATOS
TiposBásicamente existe cuatro tipos de datos, de los cuales se puede definirotros tipos de datos
TIPO : Tamaño Rango de valoreschar 1 byte - 128 a 127lint 2 bytes - 32768 a 32767lfloat 4 bytes 3'4 E-38 a 3'4 E+38ldouble 8 bytes 1'7 E-308 a 1'7 E+308
No hay comentarios:
FUNCIONES MATEMATICAS #include TRIGONOMETRICASacos(x) devuelve el arco del coseno de xasin(x) devuelve el arco del seno de xatan(x) devuelve el arco tangente de xcos(x) devuelve el coseno de x en radianessin(x) devuelve el seno de x en radianestan(x) devuelve la tangente de x en radianescosh(x) devuelve el coseno hiperbólico de xsinh(x) devuelve el seno hiperbólico de xtanh(x) devuelve la tangente hiperbólica de xhypot(x,y) devuelve la longitud de la hipotenusa de un triángulo donde x e yson los catetos
ALGEBRAICASexp(n) devuelve e (2,7182818) elevado a la n.pow(b,n) devuelve b elevado a la nlog(n) devuelve el logaritmo natural de xlogio(x) devuelve el algoritmo decimal de xsqrt(x) devuelve la raíz cuadrada de xceil(x) devuelve el menor entero de los enteros mayores a xfloor(x) devuelve el mayor entero de los enteros menores a xabs(x) devuelve el valor absoluto de xlabs(x) igual al anterior pero x está dado en entero longintfabs(x) igual al anterior pero x está dado en doublemodf(n&x) devuelve la parte fraccionaria de n y la parte entera la guarda enx.rand( ) devuelve un entero en el rango comprendido entre 0 y 32767srand(exp) produce la generación aleatoria del número.randomize( ) utiliza el reloj del computador para generar el númeroaleatorio (time.h, stdlib.h)random(n) devuelve un número entero aleatorio dentro del rango de 0 an-1.(stdlib.h)
FUNCIONES NUMERICAS #include setw(n) determina un ancho n del dato numéricosetprecision(n) determina n cantidad de decimales
FUNCIONES DE CADENA #include PARA COPIARstrcat(c1,c2) concatena y copia c2 en c1strncat(c1,c2) concatena y copia los n primeros caracteres de c2 en c1.strcpy(c1,c2) copia el contenido de c2 en c1.
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 20/45
Publicado por TRABAJO DE INVESTIGACIÓN en 17:12
strncpy(c1,c2,n) copia el contenido de los n primeros caracteres de c2 enc1.strdup(c1, c2) proporciona un duplicado de c2.
PARA BUSCAR CARACTERES EN UNA CADENA strchr(c,ch) devuelve los caracteres de la cadena desde donde encontrópor primera vez el carácter ch.strrchr(c,ch) devuelve los caracteres de la cadena desde donde encontrópor última vez el carácter ch.strpbrk(c1,c2) devuelve los caracteres de c1 desde donde encontró elprimer carácter de c2.strspn(c1,c2) devuelve el número de caracteres comunes de c1 y c2.strcspn(c1,c2) devuelve el número de caracteres que están en c1 y no enc2 hasta el primer carácter común.strstr(c1,c2) devuelve los caracteres desde donde encontró c2 en caso queno sea una subcadena devuelve el puntero nulo.
PARA COMPARARstrcmp(c1,c2) devuelve un número luego de efectuar la comparación entrec1 y c2.strncmp(c1,c2,n) igual al anterior pero hace la comparación de los nprimeros caracteres. (0 si son iguales, >0 si c1>c2, >0 si c1>c2)
OTRASstrlen(c) devuelve la longitud sin contar el delimitador nulo.strlwr(c) devuelve la cadena en minúscula excepto la ñ.strupr(c) devuelve la cadena en mayúscula excepto la ñ.strnset(c,ch,n) coloca ch en los primeros n caracteres de c.strrev(c) invierte la cadena, el único carácter que respeta es el delimitadornulo.memset(d,c,n) fija los primeros n caracteres de la cadena d con elcarácter c.
FUNCIONES DE CARACTER #include tolower(ch) devuelve el carácter en minúscula o el mismo si no escarácter.toupper(ch) devuelve el carácter en mayúscula o el mismo si no escarácter.
FUNCIONES PARA CONVERSION DE DATOS #include latof(c) convierte la cadena c a una cantidad en doble precisión.latoi(c) convierte la cadena c en un entero.latol(c) convierte la cadena c en un entero largo.
No hay comentarios:
ARCHIVOS DE CABECERA
En la programación en C es posible utilizar funciones que no esténincluidas en el propio programa. Para ello utilizamos la directiva #include,que nos permite añadir librerías o funciones que se encuentran en otrosficheros a nuestro programa.
#include
#include
#include
#include
#include
FUNCIONES DE ENTRADA/SALIDA
#include cout cout<< “cadena de caracteres”<cin cin>> variables;
#include printf printf (“formato”, lista de datos);
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 21/45
Publicado por TRABAJO DE INVESTIGACIÓN en 17:09
Publicado por TRABAJO DE INVESTIGACIÓN en 17:05
Publicado por TRABAJO DE INVESTIGACIÓN en 17:04
Publicado por TRABAJO DE INVESTIGACIÓN en 17:03
scanf scanf (“formato”, lista de direcciones de variables);
puts puts(“cadena”);
gets gets(cadena);
#include getch a = getch();
putch putch(caracter);
FUNCIONES DEL SISTEMA
#include
System(“CLS”)
System(“PAUSE”);
return 0;No hay comentarios:
OPERADORES ARITMETICOS Y DE ASIGNACION
Permiten realizar operaciones matemáticas en lenguaje C.
Existen dos tipos de operadores aritméticos:
Los binarios:
+ Suma - Resta
* Multiplicación
/ División
% Módulo (resto)
y los unarios:
++ Incremento (suma 1) -- Decremento (resta 1)
- Cambio de signo
No hay comentarios:
Operadores de asignación
La mayoría de los operadores aritméticos binarios tienen sucorrespondiente operador de asignación:
= Asignación simple
+= Suma
-= Resta
*= Multiplicación
/= División
%= Módulo (resto)
Con estos operadores se pueden escribir, de forma más breve, expresiones
del tipo:
n=n+3 se puede escribir n+=3
k=k*(x-2) lo podemos sustituir por k*=x-2
No hay comentarios:
Jerarquía de los operadores
Es importante tener en cuenta la precedencia de los operadores a la horade trabajar con ellos:
( ) Mayor precedencia
++, --
*, /, %
+, - Menor precendencia
No hay comentarios:
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 22/45
Publicado por TRABAJO DE INVESTIGACIÓN en 17:02
Publicado por TRABAJO DE INVESTIGACIÓN en 17:01
Publicado por TRABAJO DE INVESTIGACIÓN en 16:58
OPERADORES RELACIONALES
Utilizados para comparar el contenido de dos variables. En C existen seis
operadores relacionales básicos:
> Mayor que
<>
>= Mayor o igual que
<= Menor o igual que
== Igual que
!= Distinto que
El resultado que devuelven estos operadores es 1 para Verdadero y 0 para
Falso. Si hay más de un operador se evalúan de izquierda a derecha.
Además los operadores == y != están por debajo del resto en cuanto al
orden de precedencia.No hay comentarios:
OPERADORES LOGICOS
Los operadores lógicos básicos son tres:
&& AND
OR
! NOT (El valor contrario)
Estos operadores actúan sobre expresiones lógicas. Permiten unir
expresiones lógicas simples formando otras más complejas.
V = Verdadero F = Falso
No hay comentarios:
EJERCICIO: PRACTICA Nº3
,No hay comentarios:
ESTRUCTURA SELECTIVA O CONDICIONAL
Los controles que se manejan en esta estructura son:
IF (Si)
ELSE (Según Sea)
Este tipo de sentencias permiten variar el flujo del programa en base a unas
determinadas condiciones. Existen varias estructuras diferentes:
Estructura: IF...ELSE
Sintaxis:
if (condición es verdad)
acción1;
else
acción2;
La estructura selectiva permite la realización de una instrucción u otra
según un criterio o condición, y solo una de estas instrucciones se
ejecutará.
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 23/45
Publicado por TRABAJO DE INVESTIGACIÓN en 16:48
Su estructura es:
Si (condición es Verdadera) entonces
Acción A
sino
Acción B
Finsi
Donde: Acción A ó Acción B, puede ser una o varias acciones.
No hay comentarios:
EJEMPLOS
Si (a > b) entoncesEscribir (“a es mayor que b”)
sinoEscribir (“a no es mayor que b”)finsi
Hallar el algoritmo que ordene de forma ascendente dos numeros
a,b
#include
void main()
{
int a,b;
cout<<"Ingrese valor de a: "; cin>>a;
cout<<"Ingrese valor de b: "; cin>>b;
if (a < b) { cout<<"Orden ascendente: "; cout< cout<<", ";
cout< }
else
{
cout<<"Orden ascendente: ";
cout< cout<<", ";
cout< }
}
Elaborar un algoritmo que indique si un numero ingresado es
positivo o negativo, asumiendo que 0 es positivo.
Inicio
Var: n:entero
Escribir (“Ingresar número”)
Leer (n)
Si (n >=0) entonces
Escribir (“Positivo”)
Sino
Escribir (“Negativo”)
Finsi
Fin
Indicar si un numero ingresado es positivo, negativo o cero.
Inicio
Var: n:entero
Escribir (“Ingresar número”)
Leer (n)
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 24/45
Publicado por TRABAJO DE INVESTIGACIÓN en 16:27
Si (n > 0) entonces
Escribir (“Positivo”)
Sino Si (n < 0) entonces
Escribir (“Negativo”)
Sino
Escribir (“Es cero”)
Finsi
Finsi
Fin
Obtener el mayor de 3 números ingresados.
#include
void main( )
{ int a, b, c, aux;
cout<<"a=";cin>>a;
cout<<"b=";cin>>b;
cout<<"c=";cin>>c;
if (a>b)
{ if (a>c)
{ cout<<"El Mayor es ="< else
{aux=a;a=c;c=aux;
cout<<"El Mayor es ="<}
else
{ aux=a;a=b;b=aux;
if (a>c)
{ cout<<"El Mayor es ="<else
{aux=a;a=c;c=aux;
cout<<"El Mayor es ="< }
}No hay comentarios:
ESTRUCTURAS SELECTIVAS DE ALTERNATIVAMÚLTIPLE
C++ le permite anidar enunciados if-else para crear una forma de alternativamúltiple, que le proporciona gran poder y flexibilidad a sus aplicaciones.
SINTAXIS:
If (Condicion 1)
{
Else if (condicion 2)
accion 1
Else if (condicion 3)
accion 2
Else if (condicion n)
accion n
Else
{
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 25/45
Publicado por TRABAJO DE INVESTIGACIÓN en 16:25
Accion x
}No hay comentarios:
EJEMPLOS
Elaborar un algoritmo que muestre un mensaje según los
datos de la tabla :
Nota Mensaje
18 - 20 Felicitaciones
16 - 17 Tu nota es buena
13 - 15 Tu nota es regular
11 - 12 Tu nota es baja
0 - 10 Desaprobaste
#include // para cin y cout
void main( )
{
int nota;
cout << "Ingrese nota: ";
cin >> nota;
if(nota >= 18)
cout << "¡Felicitaciones!" << endl;
else if(nota >= 16)
cout << "¡Tu nota es buena!" << endl;
else if(nota >= 13)
cout << "¡Tu nota es regular!" << endl;
else if(nota >= 11)
cout << "¡Tu nota es baja!" << endl;
else
cout << "¡Desaprobaste!" << endl;
} //Fin de main()
Haga un algoritmo para que, dados dos números enteros a, b
y una clave, realice la operación aritmética indicada por
medio de la clave a los números dados. Por ejemplo, si los
datos son: 8 4 +, el algoritmo debe calcular la suma de 8 + 4.
Las claves válidas son: + - * /.
#include // para cin y cout
void main( )
{ char op; int ok = 0;float x, y, z;
cout << "Introduzca operando1, operador y operando2: ";
cin >> x >> op >> y;
if (op == '+')
z = x + y;
else if (op == '-')
z = x - y;
else if (op == '*')
z = x * y;
else if (op == '/' && y != 0)
z = x / y;
else
{
cout<<"el operador no existe"<ok = 1;
}
if (ok!=1)
cout<<"la "<}
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 26/45
Publicado por TRABAJO DE INVESTIGACIÓN en 16:21
Publicado por TRABAJO DE INVESTIGACIÓN en 16:20
No hay comentarios:
SINTAXIS: SWITCH
switch( Variable ){ case ‘N1’:Accion 1;break;case ‘N2’:Accion 2;break;case ‘Nn ’:Accion n;break; default:Accion x;}
1 comentario:
EJEMPLOS
Haga un algoritmo para que, dados dos números enteros a, b
y una clave, realice la operación aritmética indicada por
medio de la clave a los números dados. Por ejemplo, si los
datos son: 8 4 +, el algoritmo debe calcular la suma de 8 + 4.
Las claves válidas son: + - * /.
#include // para cin y cout
void main(void)
{ char op; int ok = 0; float x, y, resultado;
cout << "Introduzca operando1, operador y operando2: ";
cin >> x >> op >> y;
switch(op)
{
case ‘+’:
resultado = x + y;
break;
case ‘-’:
z = x - y;
break;
case ‘*’:
resultado = x * y;
break;
case ‘/’:
if (y != 0)
{resultado = x / y;}
else
{cout< ok = 1;}
break;
default:
cout<<"el operador no existe"< ok = 1;
}
if (ok!=1)
cout<<"la "<}
Construir un algoritmo que al ingresar una fecha, valide si la
fecha ingresada es correcta. Considerar dd / mm / aa
#include // para cin y cout
void main(void)
{int d,m,a,md;
cout<<"Ingresar fecha, indicando día mes y año"; cin>>d>>m>>a;
switch(m)
{case 1:
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 27/45
Publicado por TRABAJO DE INVESTIGACIÓN en 16:17
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
md = 31;
break;
case 4:
case 6:
case 9:
case 11:
md = 30;
break;
case 2:
if ((a%4)== 0)
md = 29;
else
md = 28;
}
if (m>0 && m<13>0 && d0)
cout<<"Fecha correcta"< else
cout<<"Fecha incorrecta"<}
No hay comentarios:
EJERCICIOS PRÁCTICA Nº5
1. Construya una algoritmo que al ingresar un numero enteroimprima el día de la semana que le corresponde. Por ejemplo: alingresar 1 debe imprimir lunes.
#include // para cin y coutvoid main( ){int nota,numero;cout << "Ingrese numero:";cin >>numero;if(numero== 1)cout << "dia lunes" << endl;else if(numero== 2)cout << "dia martes" << endl;else if(numero== 3)cout << "dia miercoles" << endl;else if(numero== 4)cout << "dia jueves" << endl;else if(numero== 5)cout << "dia viernes" << endl;else if(numero== 6)cout << "dia sabado" << endl;else if(numero== 7)cout << "dia domingo" << endl;else if(numero>=8)cout << "¡No regristado!" << endl;}//Fin de main()
2. Una empresa de carga brinda servicio a todo el continenteamericano, la tarifa que cobra por cada tonelada se muestra en elsiguiente cuadro:
Destinos ($/tonelada) Medio de transporte Norte Sur CentroAéreo 30 25 20Marítimo 25 20 15Terrestre 20 15 10
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 28/45
Asimismo, si la carga que se transporta es perecible, se leincrementa el 7% del pago total de acuerdo a las toneladas.
#include void main (){int opc,q;float precio;char p;cout<<"(1)aereo-norte"<cout<<"(2)aereo-sur"<cout<<"(3)aereo-centro"<cout<<"(4)maritimo-norte"<cout<<"(5)maritimo-sur"<cout<<"(6)maritimo-centro"<cout<<"(7)terrestre-norte"<cout<<"(8)terrestre-sur"<cout<<"(9)terrestre-centro"<cout<<"Escoger Tarifa:";cin>>opc;cout<<"Alimento esperecible:";cin>>p;cout<<"cantidad=";cin>>q;if (opc==1&&p=='s' )precio=(30*q)*1.07;else if (opc==1&&p=='n' )precio=30*q;else if (opc==2&&p=='s' )precio=(25*q)*1.07;else if (opc==2&&p=='n' )precio=25*q;else if (opc==3&&p=='s' )precio=(20*q)*1.07;else if (opc==3&&p=='n' )precio=20*q;else if (opc==4&&p=='s' )precio=(25*q)*1.07;else if (opc==4&&p=='n' )precio=25*q;else if (opc==5&&p=='s' )precio=(20*q)*1.07;else if (opc==5&&p=='n' )precio=20*q;else if (opc==6&&p=='s' )precio=(15*q)*1.07;else if (opc==6&&p=='n' )precio=15*q;else if (opc==7&&p=='s' )precio=(20*q)*1.07;else if (opc==7&&p=='n' )precio=20*q;else if (opc==8&&p=='s' )precio=(15*q)*1.07;else if (opc==8&&p=='n' )precio=15*q;else if (opc==9&&p=='s' )precio=(10*q)*1.07;else if (opc==9&&p=='n' )precio=10*q;cout<<"el precio es:"<}
3. Un banco realiza el pago de intereses a sus clientes por undeposito a plazo fijo de acuerdo a la siguiente información: Tipo demoneda, Tiempo de deposito y monto depositado. Los interesesserán aplicados según el siguiente cuadro:
Meses Soles (%) Dólares (%)0 – 5 0 06 – 12 6 413 –maS 9 7Mostrar el interés y el monto total a recibir.
#include void main (){int tm,td;float mt,md;
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 29/45
cout<<"Monto depositado";cin>>md;cout<<"Tiempo de deposito";cin>>td;cout<<"Tipo de moneda";cin>>tm;
if (td==1&&tm==1 )mt=md;else if (td==1&&tm==2 )mt=md;else if (td==2&&tm==1 )mt=md+0.06*md;else if (td==2&&tm==2 )mt=md+0.04*md;else if (td==3&&tm==1 )mt=md+0.09*md;else if (td==3&&tm==2 )mt=md+0.07*md;cout<<"el monto total es:"<}
4. Un supermercado ofrece a sus clientes descuentos de acuerdo almonto de compra, como se muestra en el siguiente cuadro:
Compra (S/.) Descuento (%)0 – 250 0251 – 500 5501 – 1000 101001 – más 15
Para recibir los beneficios de descuento un cliente solo puedecomprar dentro de un determinado rubro, así mismo dependiendodel rubro de la compra, se le aplica el siguiente impuesto sobre lacompra descontada.Rubro Impuesto (%)Comestibles 15Juguetes 20
Construir un algoritmo que calcule el pago total que hará undeterminado cliente.
#include void main (){float mc;int rubro;cout<<"Monto de compra:";cin>>mc;cout<<"Rubro:";cin>>rubro;if (mc>=0&&mc<=250&&rubro==1 )mc=mc+0.15*mc;else if (mc>=251&&mc<=500&&rubro==1 )mc=1.15*0.95*mc;else if (mc>=501&&mc<=1000&&rubro==1 )mc=1.15*0.90*mc;else if (mc>=1001&&rubro==1 )mc=1.15*0.85*mc;else if (mc>=0&&mc<=250&&rubro==2)mc=mc+0.20*mc;else if (mc>=251&&mc<=500&&rubro==2 )mc=0.95*1.20*mc;else if (mc>=501&&mc<=1000&&rubro==2 )mc=0.90*1.20*mc;else if (mc>=1001&&rubro==2 )mc=0.85*1.20*mc;cout<<"Monto de compra es:"<}
5. Un centro comercial ofrece ventas financiadas por 3 tipos detarjetas de crédito como indica a continuación:
Max. Letras Tipo de Tarjeta Interés (%)12 A 58 B 10
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 30/45
6 C 15
El cliente solo puede financiar una compra hasta el máximo deletras que se indica en el cuadro anterior, en caso contrario la ventano debe proceder. Calcular el monto de cada letra por pagar asícomo el monto total.
#include void main ()int Nl;char tipo;float consumo,Ml,interes,monto;cout<<"Monto de compra:";cin>>consumo;cout<<"Tipo de letra:";cin>>tipo;cout<<"Numero de letra:";cin>>Nl;if (tipo=='A'&&Nl<=12)interes=1.05*consumo;monto=consumo+interes;Ml=monto/Nl;else if (tipo=='B'&&Nl<=12)interes=1.10*consumo ;monto=consumo+interes;Ml=monto/Nl;else if (tipo=='C'&&Nl<=12)interes=1.15*consumo ;monto=consumo+interes;Ml=monto/Nl;else if (tipo=='A'&&Nl<=8)interes=1.05*consumo ;monto=consumo+interes;Ml=monto/Nl;else if (tipo=='B'&&Nl<=8)interes=1.10*consumo ;monto=consumo+interes;Ml=monto/Nl;else if (tipo=='C'&&Nl<=8)interes=1.15*consumo ;monto=consumo+interes;Ml=monto/Nl;else if (tipo=='A'&&Nl<=6)interes=1.05*consumo ;monto=consumo+interes;Ml=monto/Nl;else if (tipo=='B'&&Nl<=6)interes=1.10*consumo ;monto=consumo+interes;Ml=monto/Nl;else if (tipo=='C'&&Nl<=6)interes=1.15*consumo ;monto=consumo+interes;Ml=monto/Nl;cout<<"Monto de letra:";cin>>Ml;cout<<"Monto de compra:";cin>>monto;}
6. Una empresa aérea realiza ofertas de pasajes a 3 destinosdiferentes, de acuerdo a la cantidad de pasajes que se compra,como se muestra en el siguiente cuadro:
Destino Precio ($) Menos de 5 pasajes (%) De 5 a más Pasajes (%)París 184.00 10 15Italia 139.70 15 20Grecia 127.40 20 25
Un cliente solo puede comprar pasajes para una ciudad. Calcular eltotal que tiene que pagar un determinado cliente.
#include void main ()
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 31/45
{int dest;char tipo;float precio,interes;cout<<"precio=";cin>>pre;cout<<"tipo de tarjeta=";cin>>tipo;cout<<"destino=";cin>>dest;
if (tipo=='P' && pre==184.00 && pasaje <=5 ){interes=0.10*precio;monto = consumo + interes;}else if (tipo=='I' && precio==139.70 && pasaje <= 5){interes=0.15*precio;monto = consumo + interes;}else if (tipo =='G' && precio==127.40 && pasaje <=5){interes=0.20*consumo;monto = consumo + interes;}else if (tipo=='P' && pre==184.00 && pasaje >=5 ){interes=0.15*precio;monto = consumo + interes;}else if (tipo=='I' && precio==139.70 && pasaje >= 5){interes=0.20*precio;monto = consumo + interes;}else if (tipo =='G' && precio==127.40 && pasaje >=5){interes=0.25*consumo;monto = consumo + interes;}cout<<"el monto es="<cout<<"el monto de la letra="<}
7. Un club social a clasificado a sus socios en 3 categorías, como semuestra en el siguiente cuadro:
Categoria Cant. Boletos Pago Mensual (S/.) Dscto (%)A 25 200 4B 20 150 3C 15 100 2
Dicho club realiza mensualmente un tipo de evento (rifas,almuerzos, etc.)., de esta manera, un socio esta obligado a venderla cantidad de boletos que se indican en el cuadro anterior, pero siun socio vende más de los boletos indicados, se le descuenta S/.2.00por cada boleto vendido. Además si el socio tiene más de 55 añosrecibe un porcentaje de descuento de su pago mensual. Calcular elmonto total que paga un socio en un mes.#include #includevoid main(){int nsoci=0;char ncate;float nbven=0.0;int nedad=0;float monto=0.0;float descuento=0.0;float nporc=0.0;
cout<<" Ingrese Numero de Socio : ";cin>>nsoci;
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 32/45
cout<<" Ingrese Categoria (A/B/C) : ";cin>>ncate;cout<<" Ingrese Boletos Vendidos : ";cin>>nbven;cout<<" Ingrese Edad del Socio : ";cin>>nedad;switch(ncate){case 'A': if(nbven>25) monto=200-(2*nbven);else monto=200; break;case 'B': if(nbven>20) monto=150-(2*nbven);else monto=150; break;case 'C': if(nbven>15) monto=100-(2*nbven);else monto=100; break;default: cout<<"\n";cout<<" Categoria no es A B C , se cancela programa ";exit(1);}switch(ncate){case 'A': nporc=4; break;case 'B': nporc=3; break;case 'C': nporc=2; break;}if(nedad > 55){descuento=monto*nporc/100;monto=monto-descuento;}
cout<<" El Monto Calculado es : "<cout<<"\n";cout<<"\n";}
8. Calcular el pago de un obrero que trabaja al destajo. El pago querecibe el obrero por cada unidad producida depende de sucategoría y del tipo de producto que produce, como se muestra enel siguiente cuadro:
Tarifa (S/. x unidad)Categoría Tejas LosetasA 2.50 2.00B 2.00 1.50C 1.50 1.00Así mismo, el obrero recibe una bonificación especial de acuerdo ala cantidad que produce:Unidades Producidas Bonificación (%)1 – 250 0.00251 – 500 50.00501 – 1000 100.001001 – mas 150.00Además del total de ingresos se descuenta 75 por seguro.#include #include void main(){int nobre=0;char ncate;float nteja=0.0;float nlose=0.0;float wmonto=0.0;float wmontot=0.0;float wmonto1=0.0;float wtotal=0.0;float bonif=0.0;
cout<<" Ingrese Numero de Obrero : ";cin>>nobre;cout<<" Ingrese Categoria (A/B/C) : ";
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 33/45
cin>>ncate;cout<<" Ingrese Tejas Producidas : ";cin>>nteja;cout<<" Ingrese Losetas producidas : ";cin>>nlose;
switch(ncate){case 'A': wmonto=(nteja*2.50)+(nlose*2.00); break;case 'B': wmonto=(nteja*2.00)+(nlose*1.50);break;case 'C': wmonto=(nteja*1.50)+(nlose*1.00);break;default: cout<<"\n";cout<<" Categoria no es A B C , se cancela programa ";exit(1);}wtotal=nteja+nlose;if(wtotal<251) bonif=0.00;else if(wtotal<501) bonif=50.00;else if(wtotal<1001) bonif=100.00;else if(wtotal>1000) bonif=150.00;
wmontot=wmonto+bonif;if(wmontot < 75){cout<<" monto calculado es menor que 75 del seguro, se cancela ";exit(1);}else{wmonto1 = wmontot - 75;}
cout<<" El Monto Calculado es : "<cout<<"\n";cout<<"\n";}
9. En una empresa, los salarios van a aumentar en base al contratoactual del trabajador:Contrato Aumento %De 0 a 1500 soles 20De 1501 a 3000 soles 10De 3001 a 6000 soles 5De 6001 soles a más 0
Además el trabajador recibirá una bonificación especial de acuerdoa su condición civil.Estado civil BonificaciónSoltero 100.00Casado 150.00Se pide mostrar cuanto es la bonificación del trabajador y cual es susueldo neto.
#include #include void main(){
// nempl = numero Empleado, nsuel = sueldo, neciv = estado civilint nempl=0;float nsuel=0.0;char neciv;
float wmonto=0.0;float wmontot=0.0;float wmonto1=0.0;float wtotal=0.0;
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 34/45
Publicado por TRABAJO DE INVESTIGACIÓN en 15:38
Publicado por TRABAJO DE INVESTIGACIÓN en 15:29
float aumento=0.0;
cout<<" Ingrese Numero de Empleado : ";cin>>nempl;cout<<" Ingrese Sueldo del Empleado : ";cin>>nsuel;cout<<" Ingrese Estado Civil (S/C) : ";cin>>neciv;
switch(neciv){case 'S': wmonto=100.00; break;case 'C': wmonto=150.00;break;default: cout<<"\n";cout<<" Estado Civil errado se cancela programa ";exit(1);}
if(nsuel<1501) aumento=20.00;else if(nsuel<3001) aumento=10.00;else if(nsuel<6001) aumento=5.00;else if(nsuel>6000) aumento=0.00;
wmontot=nsuel+wmonto+(nsuel*aumento/100);
cout<<" El Monto Calculado es : "<cout<<"\n";cout<<"\n";}
2 comentarios:
ESTRUCTURAS REPETITIVAS
ITERACION : CICLOLa iteración simplemente significa hacer algo en forma repetida. Enprogramación a esto se le llama ciclo porque la estructura de controliteración ocasiona que el programa fluya entrando en un ciclo.
ESTRUCTURAS DE CONTROL REPETITIVO:
WHILE
DO…WHILE
FOR( inicialización; condición; incremento)
No hay comentarios:
SENTENCIA WHILE
Con esta sentencia se controla la condición antes de entrar en el bucle. Siésta no se cumple, el programa no entrará en el bucle. Naturalmente, si enel interior del bucle hay más de una sentencia, éstas deberán ir entre llavespara que se ejecuten como un bloque.
SENTENCIA: WHILE
SINTAXIS:WHILE (CONDICION){SENTENCIAS;}
EJEMPLO:
CONSTRUYA UN ALGORITMO QUE CALCULE E IMPRIMA LOS 20PRIMEROS NUMEROS DE LA SERIE DE FIBONACCI.0,1,1,2,3,5,8,13,21,34,…..
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 35/45
Publicado por TRABAJO DE INVESTIGACIÓN en 15:25
Publicado por TRABAJO DE INVESTIGACIÓN en 15:21
Publicado por TRABAJO DE INVESTIGACIÓN en 15:12
#includevoid main(){ long int a=0, b=1,i=3;long int t, tmp;cout<<"Fibonacci 1: "< cout<<"Fibonacci 2: "<while(i<=20){t=a+b;cout<<"Fibonacci "< tmp=a;a=b;b=t;i++;}}
No hay comentarios:
SENTENCIA: DO…WHILE
Con esta sentencia se controla la condición al final del bucle. Si ésta secumple, el programa vuelve a ejecutar las sentencias del bucle. La únicadiferencia entre las sentencias while y do...while es que con la segunda elcuerpo del bucle se ejecutará por lo menos una vez.
SINTAXIS:DO{SENTENCIAS;}WHILE (CONDICION)
EJEMPLO: DO…WHILE
ALGORITMO QUE CUENTA DEL 0 AL 10
INT XDO{COUT< X=X+1;}WHILE (X<=10)
No hay comentarios:
SENTENCIA: FOR
SINTAXIS:
FOR (inicialización; condición; incremento){sentencias;}
No hay comentarios:
EJEMPLO: SENTENCIA FOR
HACER EL ALGORITMO QUE CALCULE EL FACTORIAL DE UN
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 36/45
Publicado por TRABAJO DE INVESTIGACIÓN en 15:06
NUMERO N.
Si N=5
FACTORIAL DE 5 ES= 1*2*3*4*5=120
#include
void main()
{ int n;
cout<<"Ingresar n= ";cin>>n;
if(n>=0)
{ int i, fac=1;
for (i=1;i<=n;i++)
{ fac=fac*i;
}
cout<<"El Factorial es: "<}else
{ cout<<"Error..."<}
}
No hay comentarios:
EJERCICIOS: PRÁCTICA Nº6
1. Haga un Algoritm o que dado un valor n entero positivo,calcule e im prim a los elem entos correspondientes a laconjetura de Ullm an (en honor al m atem ático S. Ullm an) queconsiste en lo siguiente:· Em piece con cualquier entero positivo.· Si es par, divídalo entre 2; si es im par m ultiplíquelo por 3 yagréguele 1.· Obtenga enteros sucesivam ente repitiendo el proceso.
#include
void main ()
{
int n;
cout<<"Ingrese el numero: ";cin>>n;
while (n!=1)
{
if(n%2==0)
{
n=n/2;
cout< }
else
{
n=3*n+1;
cout< }
}
}
2. Elabore un Algoritmo para leer una serie de enteros positivos,
contar los valores introducidos y calcular su promedio. El final de los
datos se indicará con un número negativo.
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 37/45
#include
void main ()
{
int n,contador=0,suma=0;
float promedio;
cout<<"Ingresa el numero: ";cin>>n;
while(n>0)
{
suma=suma+n;
contador++;
cout<<"El siguiente numero es: "; cin>>n;
}
promedio=suma/contador;
cout<<"El promedio es:"< cout<<"El numero de valores ingresados es: "<}
3. Elabore un Algoritmo, que dada una n entera, con 1 n 100,
imprima los primeros n números naturales en orden ascendente.
#include
void main()
{
int n, i=1;
cout<<"Ingrese el numero: ";cin>>n;
if (n>=1 && n<=100) while( i<=n) { cout<
4. Elabore un Algoritmo, que dada una n entera, con 1 n 100,
imprima los primeros n números naturales en orden descendente.
#include
void main()
{
int n, i=1;
cout<<"Ingrese el numero: ";cin>>n;
if(n>=1 && n<=100) while(i<=n) { cout<
5. Elabore un Algoritmo para leer una serie de n enteros, calcular e
imprimir su suma y su promedio.
#include
void main ()
{
float n,suma=0, i =1, N;
float promedio;
cout<<"Ingresar el # de enteros: ";cin>>N;
while(i<=N) { cout<<"El siguiente numero es: "; cin>>n;
suma=suma+n;
i++;
}
promedio=suma/N;
cout<<"El promedio es :"<cout<<"La suma es: "<}
6. Elabore un Algoritmo, que calcule m x n (m ³ 0 , n ³ 0, ambos
enteros) sin utilizar la operación de multiplicación.
----->> 1ra Forma
#include
void main ()
{
int i=1,s=0,m,n;
cout<<"El numero M es: ";cin>>m;
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 38/45
cout<<"El numero N es: ";cin>>n;
while (i<=n) { s=s+m; i++ ; } cout<<"La multiplicacion de M y N es: "<}
--->> 2da Forma
#include
void main()
{
int n,m,suma=0;
cout<<"Ingrese el primer numero: "; cin>>m;
cout<<"Ingrese el segundo numero: "; cin>>n;
while (m>=0 && n>=0)
{
suma=suma+m;
n--;
}
cout<<"La multiplicacion es: "<}
7. Elabore un Algoritmo, que calcule mn (n > 0 y entero) sin utilizar
potencia.
#include
void main()
{
int n,m,multi=1;
cout<<"Ingrese el numero M: "; cin>>m;
cout<<"Ingrese el numero N: "; cin>>n;
if (n>0)
{
while (n>0)
{
multi=multi*m;
n--;
}
cout<<"M elevado a la N es: "<
}
else
{
cout<<"¡¡El programa no ejecuta esta operacion!!";
}
}
8. Haga un programa que dado un número n entero positivo,
imprima todos sus divisores.
#include
void main ()
{
int n,i=1;
cout<<"Ingrese el numero: ";
cin>>n;
while (i<=n)
{
if (n%i==0)
{
cout< i++;
}
else
{
i++;
}
}
}
9. Ingresar números enteros y calcular la suma de dichos números. El
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 39/45
algoritmo termina cuando se ingresa el numero cero.
#include
void main()
{
int n, suma=0;
while (n!=0)
{
cout<<"Ingrese el numero: "; cin>>n;
suma=suma+n;
}
cout<<"La suma de los numeros es: "<}
10. Se quiere ingresar las calificaciones de los alumnos. Y realizar
un algoritmo para calcular el promedio de las calificaciones
ingresadas. El algoritmo termina cuando se ingresa una nota
negativa.
#include
void main()
{
float n, suma=0, cont=0, prom;
while (n>=0)
{
cout<<"La nota es: "; cin>>n;
suma=suma+n;
cont++;
}
prom=(suma-n)/(cont-1);
cout<<"El promedio es: "<}
11. En un proceso repetitivo se ingresan las edades de las personas,
se desea saber cuantas personas mayores de edad hay y cuantas
menores de edad. El proceso termina cuando se ingresa el cero.
#include
void main()
{
int n, contmay=0,contmen=0;
while (n!=0)
{
cout<<"La edad de la persona es: "; cin>>n;
if (n>0 && n>=18 && n<100)
{contmay++; }
else if (n>0 && n<18)
{ contmen++;}
else if (n<0>100)
{contmay=contmay-1;
contmen=contmen-1;}
}
cout<<"El numero de personas mayores de edad es: "<cout<<"El numero
de personas menores de edad es: "<}
12. Una persona debe realizar un muestreo con N personas para
determinar el promedio de peso de los niños, jóvenes y adultos que
existen en su zona habitacional. Se determinan las categorías con
base en la siguiente tabla:
Categoría Edad
Niños 0 – 12
Jóvenes 13 – 29
Adultos 30 – más
#include
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 40/45
void main ()
{
int n,contn=0,contj=0,conta=0;
while (0<=n)
{
cout<<"Ingrese la edad: ";
cin>>n;
if (n>=0 && n<=12)
{
contn++;
}
else if (n<=29 && n>=13)
{
contj++;
}
else if (n>=30)
{
conta++;
}
}
cout<<"El numero de niños es: "<cout<<"El numero de jovenes es: "
<cout<<"El numero de adultos es: "<}
13. En un examen el tipo de calificación es el siguiente:
Puntaje Calificación
100 – 70 A
69 – 30 B
29 – 0 C
Escribe un algoritmo que encuentre:
a) El número de estudiantes que rindieron el examen.
b) El número de estudiantes que obtuvieron A, B y C.
El algoritmo termina cuando se le ingresa un puntaje negativo.
#include
void main()
{
int p,total;
int conta=0,contb=0,contc=0;
while (p>=0)
{
cout<<"El puntaje es: ";cin>>p;
if(p>=0 && p<=29)
{
contc=contc+1;
}
else if (p>=30 && p<=69)
{
contb=contb+1;
}
else if (p>=70 && p<=100)
{
conta=conta+1;
}
else if (p>100)
{
cout<<"¡¡Tu puntaje no se encuentra en ninguna de las categorias!!"< }
}
total=conta+contb+contc;
cout<<"Los alumnos que rindieron el examen son: "<cout<<"Los alumnos
que estan en la categoria A son: "<cout<<"Los alumnos que estan en la
categoria B son: "<cout<<"Los alumnos que estan en la categoria C son: "
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 41/45
Publicado por TRABAJO DE INVESTIGACIÓN en 14:27
Publicado por TRABAJO DE INVESTIGACIÓN en 14:16
Publicado por TRABAJO DE INVESTIGACIÓN en 14:06
Publicado por TRABAJO DE INVESTIGACIÓN en 14:02
<}1 comentario:
SEGUNDA UNIDAD
No hay comentarios:
FUNCIONES Y PROCEDIMIENTOS
Las funciones generan retorno de un valor. Una función es una
colección independiente de declaraciones y sentencias,
generalmente enfocadas a realizar una tarea específica.
Los procedimientos realizan parte del proceso de un programa.
El C++, no diferencia entre ambas las trabaja igual.
No hay comentarios:
MÓDULO PRINCIPAL
Se trabaja con un modulo principal, el cual contiene las llamadas a
las funciones y/o procedimientos a realizar.
No hay comentarios:
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 42/45
Publicado por TRABAJO DE INVESTIGACIÓN en 13:56
Publicado por TRABAJO DE INVESTIGACIÓN en 13:49
EJEMPLO DE FUNCIÓN
Trabajando con funciones programa una función que calcule la
suma de 2 números.
El pseudocodigo será:
Módulo Principal
Inicio:
Var: a,b,s: real
Escribir (“Ingresar primer numero”)
Leer (a)
Escribir (“Ingresar segundo numero”)
Leer (b)
s ß suma (a,b)
Escribir (“La suma es: ” , s)
Fin
Función :
Funcion suma (x:real , y:real)
Var: suma: real
suma <- x + y
retornar (suma)
Fin-función
No hay comentarios:
EJEMPLO: VISIÓN COMPLETA
#include float suma(float,float); ------------->>> //variable Global
//Programa Principalvoid main( ){float a,b,s; ------------->>> //variables localescout<<"ingrese 1 numero: ";cin>>a;cout<<"ingrese 2 numero: ";cin>>b;s=suma(a,b); ------------->>> //Uso de la Funcióncout<<"El resultado es: "<}
//Función (Módulo)float suma(float x, float y){float ss; -------------->>> //variable localss = x + y;return ss; --------------->>> //Retorno del Resultado}
No hay comentarios:
EJEMPLO: PROMEDIO DE NOTAS
#include
void main(){float Funcion_1 (int x), z1=0;int n=0;cout<<"Ingrese la cantidad de alumnos:"; cin>>n;z1=Funcion_1(n);cout<<"El Promedio es: "< }
float Funcion_1 (int x){int s=0, nota=0, d=0, p=0;
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 43/45
Publicado por TRABAJO DE INVESTIGACIÓN en 13:47
Publicado por TRABAJO DE INVESTIGACIÓN en 10:51
for (int i=0;i {cout<<"Ingrese la nota: ";cin>>nota;s=s+nota;d=d+1;}p=s/d;return(p);}
No hay comentarios:
EJEMPLO: Selecciona la Mayor Talla
#include
void main( )
{
float Funcion_Mayor (int x);
int n=0;
float z1=0.0;
cout<<"Ingrese la cantidad de alumnos:";cin>>n;
z1=Funcion_Mayor(n);
cout<<"La Mayor talla es: "< z1;
}
float Funcion_Mayor (int x)
{
float talla=0.0, mayor=0.0;
for (int i=0;i {
cout<<"Ingrese la Talla: "; cin>>talla;
if (talla > mayor)
mayor=talla;
}
return(mayor);
}No hay comentarios:
VECTORES
Son conjuntos de datos homogéneos* Tipos de datos:- Simples:char, int, long, float, double.- Compuestos: Vector.- Los datos almacenados son todos del mismo tipo.- Pueden numerarse.- Permiten tratamiento homogéneo e implícitoEstructura.- Los datos almacenados son de tipos distintos.- Tratamiento explícito.Combinaciones de ambos.
* Tipificación:– Elemento: Cada uno de las unidades que forman elvector.– Rango: Cantidad de elementos que contiene– Índice: Número identificativo del elemento. Siemprecomienza por 0
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 44/45
Publicado por TRABAJO DE INVESTIGACIÓN en 10:24
Publicado por TRABAJO DE INVESTIGACIÓN en 10:14
Publicado por TRABAJO DE INVESTIGACIÓN en 10:11
No hay comentarios:
EJERCICIO SOBRE VECTORES
Programa que almacena 10 números enterosleídos desdeteclado sobre un vector y lo visualiza una vezcreado.
#include #define RANGO 10main () {int numeros[RANGO], i;for (i=0;RANGO>i;i++) {/*Se leen todos y cada uno delos nº uno a uno*/printf ("\n Introduce el valor nº %d“, i+1);scanf ("%d",&numeros[i]);}for (i=0 ; RANGO>i ; i++)printf("\nEl valor del elemento %d es %d", i+1,numeros[i]);}
No hay comentarios:
MATRICES
Una Matriz es un arreglo de valores, ordenadas por medio de filas ycolumnas.En el lenguaje C, los arreglos se inicializan en 0,0 y las filas sonhorizontales y las columnas verticales.
No hay comentarios:
EJERCICIOS SOBRE MATRICES
En una matrix de dimensiones mxn hallar el mayor valor y el
menor valor del arreglo.
18/10/2015 ALGORITMO
http://algorucv-ingenieria.blogspot.pe/ 45/45
Publicado por TRABAJO DE INVESTIGACIÓN en 9:51
Publicado por TRABAJO DE INVESTIGACIÓN en 9:48
Publicado por TRABAJO DE INVESTIGACIÓN en 9:31
DESARROLLO:
leer(matriz [x] [y])mayor=0; menor=1000;for(x=0; xfor (y=0; x{if (matriz [x] [y]> mayor)mayor= matriz [x] [y];if (matriz [x] [y]< menor)menor= matriz [x] [y];}}escribir(mayor, menor)
2 comentarios:
Concluciones
No hay comentarios:
BIBLIOGRAFIA
Luis Joyanes Aguilar.-
-Fundamentos de la Progradación, Algoritmos yEstructura de datos. McGraw Hill Interamericana deEspaña 1995.-Fundamentos De la Programación. McGraw HillInteramericana de España 1995.
Javier Gálvez.-
-Algoritmica: Diseño y análisis de algorítmicoFuncionales e Imperactivos.
Leobardo López.-
-Programación estructurada: Un enfoque algorítmico.
Mark Allen Weiss.-
-Estructuras de Datos y Algoritmos.
Dennis M. Ritchie.-
-The C Programming Language. Prentice Hall, 1988.No hay comentarios:
Página principal
Suscribirse a: Entradas (Atom)