You are on page 1of 5

Algoritmos y lgica de programacin

Hay que distinguir entre regin declarativa de una

Aplicacin de mtodos de programacin en dev-c++


Juan David Gutirrez 201312038 ingeniera de minas
declaracin y parte declarativa. En el supuesto de una
declaracin de una variable (por ejemplo I: Integer := 0;)
se extiende por una regin de texto que abarca slo una
lnea, sin embargo, otras declaraciones ms complejas
como procedimientos y paquetes constituyen muchas ms
lneas de texto.

ResumenLa aplicacin de los mtodos de programacin en


dev-c++ son primordiales para la solucin de tareas
especializadas, especialmente en ingeniera debido a que el
profesional puede recurrir a el estudio de lneas de cdigo en c++
para hacer clculos de un manera ms rpida, precisa y practica
Palabras ClavesAlgoritmo, Condicional, Declaracin, Dev-c+
+, Proposicin.

I.

INTRODUCCIN

L siguiente trabajo se desarroll con el fin de


solucionar
una serie de algoritmos (expuestos en
el documento)en las que se pudo fortalecer el mtodo
de codificacin de programas (.exe) utilizando el compilador
dev-c++.
II. OBJETIVOS
i.
ii.
iii.
iv.

Aplicar mtodos de codificacin en dev-c++ para


la solucin de operaciones matemticas.
Recopilar estudios e informacin necesarios para
la codificacin en dev-c++.
Analizar el comportamiento de los algoritmos
propuestos.
Fortalecer el conocimiento en el rea de la
programacin y el estudio de algoritmos.
III.

i.

MARCO TERICO

Algoritmo
En matemticas, ciencias de la computacin y disciplinas
relacionadas, un algoritmo es un conjunto prescrito de
instrucciones o reglas bien definidas, ordenadas y finitas
que permite realizar una actividad mediante pasos
sucesivos que no generen dudas a quien deba realizar
dicha actividad. Dados un estado inicial y una entrada,
siguiendo los pasos sucesivos se llega a un estado final y
se obtiene una solucin.
En la vida cotidiana, se emplean algoritmos
frecuentemente para resolver problemas. Algunos
ejemplos son los manuales de usuario, que muestran
algoritmos para usar un aparato, o las instrucciones que
recibe un trabajador por parte de su patrn. Algunos
ejemplos en matemtica son el algoritmo de la divisin
Para calcular el cociente de dos nmeros, el algoritmo de
Euclides para obtener el mximo comn divisor de dos
enteros positivos, o el mtodo de Gauss para resolver un
sistema lineal de ecuaciones.

ii.

Programacin Declaraciones

iii.

Sentencia condicional
Instruccin o grupo de instrucciones que se pueden
ejecutar o no en funcin del valor de una condicin.
Los tipos ms conocidos de sentencias condicionales son
el SI. ENTONCES (if..then), el SI..ENTONCES..SI NO
(if..then..else) y el SEGN (case o switch), aunque
tambin podramos mencionar al lanzamiento de errores
como una alternativa ms moderna para evitar el
"anidamiento" de sentencias condicionales.

iv.

Dev-C++

Es un entorno de desarrollo integrado (IDE) para


programar en lenguaje C/C++. Usa MinGW que es una
versin de GCC (GNU Compiler Collection) como su
compilador. Dev-C++ puede adems ser usado en
combinacin con Cygwin y cualquier compilador basado
en GCC.
El Entorno est desarrollado en el lenguaje Delphi de
Borland. Tiene una pgina de paquetes opcionales para
instalar, con diferentes bibliotecas de cdigo abierto.
v.

Proposicin Lgica

Definicin. Una proposicin es una oracin con valor


referencial o informativo, de la cual se puede predicar su
veracidad o falsedad, es decir, que puede ser falsa o
verdadera pero no ambas a la vez. La proposicin es la
expresin lingstica del razonamiento, que se caracteriza
por ser verdadera o falsa empricamente, sin
ambigedades. Son proposiciones las oraciones
aseverativas, las leyes cientficas, las frmulas
matemticas, las frmulas y/o esquemas lgicos, los
enunciados cerrados o claramente definidos. No son
proposiciones las opiniones y suposiciones; los
proverbios, modismos y refranes; los enunciados abiertos
no definidos; las oraciones interrogativas, exclamativas,
imperativas, desiderativas y dubitativas; las interjecciones
en general; ni las operaciones aritmticas.
IV.

Problema 1:

DIAGRAMA DE FLUJO DE LOS PROBLEMAS


PROPUESTOS

Algoritmos y lgica de programacin

Problema 2:

Problema 3:

Problema 4:

Algoritmos y lgica de programacin

Problema 5:

V.
#include <iostream.h>
#include <conio.h>
#include <math.h>
void menu(){
char o;
do{a1:
cout<<"\t\t\t u u ppppp ttttttt ccccc\n";
cout<<"\t\t\t u u p p t
c\n";
cout<<"\t\t\t u u ppppp t
c\n";
cout<<"\t\t\t uuuu p
t
ccccc\n";
cout<<"\n";
cout<<"\t\t\t _______________________________\n";
cout<<"\t\t\t|\tjuan david gutierrez\t|\n";
cout<<"\t\t\t|\t 201312038\t\t|\n";
cout<<"\t\t\t|\tingenieria de minas\t|\n";
cout<<"\t\t\t|\t
uptc\t\t|\n";
cout<<"\t\t\t|_______________________________|\n";
cout<<"\n";

CDIGO

cout<<" _______________________________\n";
cout<<" |\tMENU DE OPCIONES\t |\n";
cout<<" |_______________________________|\n";

Algoritmos y lgica de programacin


cout<<"\n";
cout<<"1) punto 1 (y=1+x+2x+3x+....+nx)\n";
cout<<"2) punto 2 (z=(x-y)^2+(x-2y)^2+(x-3y)^2+....(x-ny)^2)\n";
cout<<"3) punto 3 (z=(E(i=1)^n(x-y)^2 )/(n(i=1)^n(sinx+cosx)^(2-i))\n";
cout<<"4) punto 4 (raiz utilizando metodo de newton)\n";
cout<<"5) punto 5 (y=(E(i=1)^n(i)^2i )/(n(i=1)^n(i)^(z-i) )\n";
cout<<"6) salir\n";
cout<<"\n";
cout<<"Ingrese la opcion deseada Opcion: ";
cin>>o;
cout<<endl;
system ("cls");
switch(o){
case '1':
{float x,y,i;
p1:cout<<"\n";
cout<<"\t\t\t _______________________________\n";
cout<<"\t\t\t|\tjuan david gutierrez\t|\n";
cout<<"\t\t\t|\t 201312038\t\t|\n";
cout<<"\t\t\t|\ingeniera de minas\t|\n";
cout<<"\t\t\t|\t
uptc\t\t|\n";
cout<<"\t\t\t|_______________________________|\n";
cout<<"\n";
cout<<"1) punto 1 \n";
cout<<"problema:y=1+x+2x+3x+....+nx"<<endl;
cout<<endl;
cout<<"ingrese valor de x=";
cin>>x;
cout<<endl;
y=1;
if (x<=9999999)
{for (i=1;i<=x;i++)
y=y+(i*x);
cout<<endl;cout<<"valor valor de y=";
cout<<y;}
else cout<<"el valor de x es demasiado grande para calcularlo";
cout<<endl;
cout<<endl;
cout<<" para volver al men presione cualquier tecla";
getch();
system ("cls");
goto a1;
} break;
case '2':
{double x,y,i,s;
cout<<"\n";
cout<<"\t\t\t _______________________________\n";
cout<<"\t\t\t|\tJuan David Gutierrez\t|\n";
cout<<"\t\t\t|\t 201312038\t\t|\n";
cout<<"\t\t\t|\ingeniera de minas\t|\n";
cout<<"\t\t\t|\t
uptc\t\t|\n";
cout<<"\t\t\t|_______________________________|\n";
cout<<"\n";
cout<<"2) punto 2 \n";
cout<<"problema:z=(x-y)^2+(x-2y)^2+(x-3y)^2+....(x-ny)^2"<<endl;
cout<<endl;
cout<<"ingrese valor de x=";
cin>>x;
cout<<endl;
cout<<"ingrese valor de y=";
cin>>y;
cout<<endl;
s=0;
if (y<=99999999)
{for(i=1;i<=y;i++)
s=s+pow((x-(i*y)),2);
cout<<"valor de z=";
cout<<s;}
else cout<<"el valor ingresado de y es demaciado grande";
cout<<endl;
cout<<endl;
cout<<"presione cualquier tecla para volver al menu ";
getch();
system ("cls");
goto a1;

}
break;
case '3':
{double x,i,p,s,f,y,n,t,a,g,r,h,m,l;
cout<<"\n";
cout<<"\t\t\t _______________________________\n";
cout<<"\t\t\t|\tjuan david gutierrez\t|\n";
cout<<"\t\t\t|\t 201312038\t\t|\n";
cout<<"\t\t\t|\tingenieria de minas\t|\n";
cout<<"\t\t\t|\t
uptc\t\t|\n";
cout<<"\t\t\t|_______________________________|\n";
cout<<"\n";
cout<<"3) punto 3\n";
cout<<"problema= z=(E(i=1)^n(x-y)^2 )/(n(i=1)^n(sinx+cosx)^(2i) )"<<endl;
cout<<""<<endl;
cout<<"ingrese el valor x=";
cin>>x;
cout<<"ingrese el valor y=";
cin>>y;
cout<<"ingrese el valor n=";
cin>>n;
if (n<=999999)
{p=0;
s=1;
l=1;
h=(3.1415926535897932384626433832795028841971693993751058209749
445923078164062862089986280348253421170679*x)/180;
t=sin(x);
r=sin(h);
a=cos(x);
g=cos(h);
for (i=1;i<=n;i++)
p=p+(pow((x-y),2));
for (i=1;i<=n;i++)
s=s*(pow((t*a),(2-i)));
for (i=1;i<=n;i++)
l=l*(pow((r*g),(2-i)));
if (s!=0)
{f=p/s;cout<<"operacion en radianes="<<f<<endl;}
else cout<<"el denomiador es cero en radianes "<<endl;
if (l!=0)
{m=p/l;cout<<"operacion en grados="<<m<<endl;}
else cout<<"el denomiador es cero en grados"<<endl;
cout<<endl;
cout<<"presione cualquier tecla para volver al menu ";}
else
cout<<endl<<"el valor de n es demaciado grande para ejecutar la
operacion"<<endl;
getch();
system ("cls");
goto a1;}
break;
case '4':
{ double x,r,z,y;
long i,;
cout<<"\n";
cout<<"\t\t\t _______________________________\n";
cout<<"\t\t\t|\tjuan david gutierrez\t|\n";
cout<<"\t\t\t|\t 201312038\t\t|\n";
cout<<"\t\t\t|\tingenieria de minas\t|\n";
cout<<"\t\t\t|\t
uptc\t\t|\n";
cout<<"\t\t\t|_______________________________|\n";
cout<<"\n";
cout<<"4) punto 4 \n";
cout<<"problema: calcular la raiz cudrada de un numero utilizando el metodo
de newton "<<endl;
cout<<endl;
cout<<"ingrese el valor de el numero que al que desea hallar la raiz
cuadrada=";
cin>>x;
cout<<endl;
if (x<0)
{cout<<"la raiz cuadrada de un numero negativo no existe"<<endl;
cout<<endl;

Algoritmos y lgica de programacin


cout<<"presione cualquier tecla para volver al menu ";}
else
{y=x-0.00001;
i=1;
while (((0>x-pow(y,2))||(x-pow(y,2)>0.0001))&&(i<=10000000))
{i=i+1;r=x/y;y=(r+y)/2;}
if (i<=10000000)
{cout<<"la raiz cuadrada de "<<x<<"="<<y;}
else {cout<<"la raiz cuadrada de "<<x<<"="<<y<<" (aproximadamente)";}
cout<<endl;
cout<<endl;
cout<<"presione cualquier tecla para volver al menu ";}
getch();
system ("cls");
goto a1;
}break;
case '5':
{ double n,i,z,s,p,t;
cout<<"\n";
cout<<"\t\t\t _______________________________\n";
cout<<"\t\t\t|\tjuan david gutierrez\t|\n";
cout<<"\t\t\t|\t 201312038\t\t|\n";
cout<<"\t\t\t|\tingenieria de minas\t|\n";
cout<<"\t\t\t|\t
uptc\t\t|\n";
cout<<"\t\t\t|_______________________________|\n";
cout<<"\n";
cout<<"5) punto 5 \n";
cout<<"problema= y=(E(i=1)^n(i)^2i )/(n(i=1)^n(i)^(z-i) )"<<endl;
cout<<""<<endl;
cout<<""<<endl;
cout<<"ingrese un valor n=";
cin>>n;
cout<<"ingrese un valor z=";
cin>>z;
p=0;
s=1;
for (i=1;i<=n;i++)
p=p+(pow((i),(2*i)));
for (i=1;i<=n;i++)
s=s*(pow((i),(z-i)));
cout<<endl<<endl;
if (s!=0);
else cout<<"el denomiador no puede ser cero"<<endl;
t=p/s;
if (t<=999999999)
cout<<"resultado de la operacion="<<t<<endl;
else cout<<"no se puede determinar el valor de la operacion"<<endl;
cout<<endl;
cout<<endl;
cout<<"presione cualquier tecla para volver al menu ";
getch();
system ("cls");
goto a1;
} break;

case '6':exit(0); break;


}}while( o>6); }
main(){
menu();
return 0;
}

VI. CONCLUSIN
i.
ii.
iii.
iv.

Se pudo fortalecer habilidades de programacin


bsicas.
Se recopilo informacin importante para la
comprensin y desarrollo de algoritmos y mtodos de
organizacin de datos.
Se comprendi la importancia de la delimitacin de
variables para evitar errores de clculo.
Se utilizaron cdigos de condicionamiento,
declaracin, proporcin y de ciclo:
I.

INFOGRAFA

HTTP://ESPANOL.ANSWERS.YAHOO.COM/QUESTION/INDEX?
QID=20111104201344AAFGJOW
HTTP://ES.WIKIPEDIA.ORG/WIKI/C%2B%2B
HTTP://ES.WIKIPEDIA.ORG/WIKI/ALGORITMO
HTTP://ES.WIKIBOOKS.ORG/WIKI/PROGRAMACI
%C3%B3N_EN_ADA/DECLARACIONES
HTTP://ES.WIKIPEDIA.ORG/WIKI/SENTENCIA_CONDICIONAL
HTTP://WEBATARIO.BLOGSPOT.COM/2008/02/PROPOSICINLGICA.HTML
HTTP://PROGRA.USM.CL/APUNTE/EJERCICIOS/1/METODONEWTON.HTML
HTTP://WWW.PROGRAMACIONFACIL.COM/CPP:INSTRUCCION_S
WITCH
HTTP://ZARZA.USAL.ES/~FGARCIA/DOC/TUTO2/II_2.HTM
HTTP://WEBS.ADAM.ES/RLLORENS/PI.HTM

You might also like