Escuela Nacional Preparatoria
No.6 Antonio Caso
Opciones Técnicas. Computación
Alumno:GARCIA Garcia Fernando Yetzan
Profa. Sandra Isabel Martínez Sanchez
*(Para poder analizar la metodología y solución de problemas tenemos que saber que es un problema y como podemos solucionarlo)
1. Definición
del Problema
2. Análisis del
Problema
3. Solución del
Problema
4.Ejecución del
Problema
¿Qué es un problema?
Un problema se
puede definir como la contradicción desfavorable de "lo que es" entre
"lo que debe ser".
Un problema suele ser un asunto
del que se espera una solución, aunque ésta lista no siempre sea
obvia.
Análisis del Problema
*(Una recomendación muy práctica es el que nos pongamos en el lugar de la computadora, y analizar que es necesario que me ordenen y en que secuencia, para poder producir los resultados esperados. También da buenos resultados hacer similitudes con la labor de un empleado que hace el mismo trabajo que deseamos programar a la computadora.)
obvia.
*Está dada por el enunciado del
problema
*Debe ser claro y completo
*Es importante que conozcamos
exactamente que se desea de la computadora; mientras que esto no se comprenda
no tiene caso pasar a la siguiente etapa.
PASOS PARA LA SOLUCIÓN DE PROBLEMAS :
Análisis del Problema
Entendido el
problema (que se desea obtener del computador), para resolverlo es preciso
analizar:
*Los datos de
entrada que nos suministran.
*El proceso al
que se requiere someter esos datos a fin de obtener los resultados
esperados.
*Áreas de
trabajo, fórmulas y otros recursos necesarios.
*(Una recomendación muy práctica es el que nos pongamos en el lugar de la computadora, y analizar que es necesario que me ordenen y en que secuencia, para poder producir los resultados esperados. También da buenos resultados hacer similitudes con la labor de un empleado que hace el mismo trabajo que deseamos programar a la computadora.)
Se debe analizar el problema a fin de conseguir el tipo de información que queremos manejar, la cual será tratada por el programa para luego dar una solución o resultado que nos ayudará en la toma de desiciones. El programador debe identificar los elementos o datos del problema que nos ayudaran en la solución del mismo y luego realizar una serie de pasos a seguir ordenados relacionados entre si, dicho procedimiento es el algoritmo.
Todo problema debe tener datos de entrada, los cuales serán pedidos a los usuarios que van a usar el programa, luego de esta captura de datos el programa procesara dicha entrada y debe dar una salida que será de utilidad para el usuario; esta salida debe ser veraz, eficiente y confiable, esto se logra con pruebas exhaustivas y con ayuda de la experiencia.
En este curso vamos a resolver problemas del tipo estructurado que es uno de los paradigmas de programación mas usados pero no es el único, donde usaremos como herramienta C++( ya sea Borland 3.1 ó 5.1, ó Visual C++ 6.0), ya que es un lenguaje que nos permite usar la mayoría de herramientas lógicas para resolver los problemas.
La mayoría de los problemas se suelen dividir en sup-problemas, cada uno de ellos mas simples que el original para lograr una estructuración del programa y un desarrollo mejor, esto se logra con el uso de funciones o procedimientos, el cual hablaremos mas adelante en este curso, esto nos ayuda a dividir el problema y atacarlos de diferentes ángulos. En programación no hay un sólo camino, ni una formula para resolver los problemas cada problema es un mundo distinto y depende del programador encontrar el camino mas eficiente y fácil para llegar a la solución, esto se logra con constancia y experiencia en la programación, desde luego conocer el lenguaje a mayor profundidad ofrece una ventaja mayor debido a que se pueden usar las herramientas que éste nos ofrece.
Solución del problema
Planteamiento de alternativas de solución
Después de la definición del problema y del análisis de los datos de entrada el proceso continúa con el análisis de las alternativas de solución. Por lo general la solución de un problema puede alcanzarse por distintas vías. Es útil tratar de plantear la mayor cantidad de alternativas posibles de solución pues de esta forma las posibilidades aumentan a favor de encontrar la vía correcta.
Elección de una alternativa
Después de tener todo el repertorio de alternativas es necesario pasar a otra etapa: la elección de la mejor entre todas las posibilidades. Esta fase es muy importante por que de la elección realizada depende del avance final hasta la solución
Desarrollo de la solución
Después de decidir cual es la mejor alternativa de todas se llega a la etapa de la solución. En esta fase, partir de los datos relacionados con la alternativa seleccionada, se aplican las operaciones necesarias para solucionar el problema.
Evaluación de la solución
Luego de haber desarrollado la solución queda aún una etapa, que es la de evaluación, en los procesos industriales a este procedimiento se le llama “control de calidad” y consiste en determinar que la solución obtenida es lo que se esperaba conseguir comprobando que el resultado sea correcto.
Ejecucion de problema
La construcción de un compilador involucra la división del proceso en una serie de fases que variará con su complejidad. Generalmente estas fases se agrupan en dos tareas: el análisis del programa fuente y la síntesis del programa objeto.· Análisis: Se trata de la comprobación de la corrección del programa fuente, e incluye las fases correspondientes al Análisis léxico (que consiste en la descomposición del programa fuente en componentes léxicos), Análisis sintáctico (agrupación de los componentes léxicos en frases gramaticales ) y Análisis semántico (comprobación de la validez semántica de las sentencias aceptadas en la fase de Análisis Sintáctico).
· Síntesis: Su objetivo es la generación de la salida expresada en el lenguaje objeto y suele estar formado por una o varias combinaciones de fases de Generación de Código (normalmente se trata de código intermedio o de código objeto) y de Optimización de Código (en las que se busca obtener un código lo más eficiente posible).
Alternativamente, las fases descritas para las tareas de análisis y síntesis se pueden agrupar en Front-end y Back-end:· Front-end: es la parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Esta parte suele ser independiente de la plataforma o sistema para el cual se vaya a compilar, y está compuesta por las fases comprendidas entre el Análisis Léxico y la Generación de Código Intermedio.
· Back-end: es la parte que genera el código máquina, específico de una plataforma, a partir de los resultados de la fase de análisis, realizada por el Front End.
EJECUCIÓN:En informática, ejecutar es la acción de iniciar la carga de un programa o de cualquier archivo ejecutable.
En otras palabras, la ejecución es el proceso mediante el cual una computadora lleva a cabo las instrucciones de un programa informático.
Se pueden ejecutar programas compilados (por ejemplo, en Windows, los .EXE) o programasinterpretados (por ejemplo, los scripts).
Ejecutar un programa implica que éste estará en estado de ejecución y, por ende, en memoria, hasta que se finalice.
Algunas bibliografías extienden la definición de ejecutar e incluyen la carga de archivos que no son ejecutables. Por ejemplo, cuando se ejecuta una imagen JPG y se abre el programa para visualizar la misma, o cuando se ejecuta un sonido MP3 y se abre el reproductor de audio. Técnicamente hablando, lo que está realmente en ejecución es el programa que se encarga de interpretar el archivo no ejecutable.
En Windows, la mayoría de los programas que están en ejecución se listan en el Administrador de tareas, desde donde pueden ser finalizados.
En otras palabras, la ejecución es el proceso mediante el cual una computadora lleva a cabo las instrucciones de un programa informático.
Se pueden ejecutar programas compilados (por ejemplo, en Windows, los .EXE) o programasinterpretados (por ejemplo, los scripts).
Ejecutar un programa implica que éste estará en estado de ejecución y, por ende, en memoria, hasta que se finalice.
Algunas bibliografías extienden la definición de ejecutar e incluyen la carga de archivos que no son ejecutables. Por ejemplo, cuando se ejecuta una imagen JPG y se abre el programa para visualizar la misma, o cuando se ejecuta un sonido MP3 y se abre el reproductor de audio. Técnicamente hablando, lo que está realmente en ejecución es el programa que se encarga de interpretar el archivo no ejecutable.
En Windows, la mayoría de los programas que están en ejecución se listan en el Administrador de tareas, desde donde pueden ser finalizados.En otras palabras, la ejecución es el proceso mediante el cual una computadora lleva a cabo las instrucciones de un programa informático.Se pueden ejecutar programas compilados (por ejemplo, en Windows, los .EXE) o programasinterpretados (por ejemplo, los scripts).Ejecutar un programa implica que éste estará en estado de ejecución y, por ende, en memoria, hasta que se finalice.Algunas bibliografías extienden la definición de ejecutar e incluyen la carga de archivos que no son ejecutables. Por ejemplo, cuando se ejecuta una imagen JPG y se abre el programa para visualizar la misma, o cuando se ejecuta un sonido MP3 y se abre el reproductor de audio. Técnicamente hablando, lo que está realmente en ejecución es el programa que se encarga de interpretar el archivo no ejecutable.En Windows, la mayoría de los programas que están en ejecución se listan en el Administrador de tareas, desde donde pueden ser finalizados.
Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode), o simplemente texto. Este proceso de traducción se conoce como compilación.
Todo problema debe tener datos de entrada, los cuales serán pedidos a los usuarios que van a usar el programa, luego de esta captura de datos el programa procesara dicha entrada y debe dar una salida que será de utilidad para el usuario; esta salida debe ser veraz, eficiente y confiable, esto se logra con pruebas exhaustivas y con ayuda de la experiencia.
En este curso vamos a resolver problemas del tipo estructurado que es uno de los paradigmas de programación mas usados pero no es el único, donde usaremos como herramienta C++( ya sea Borland 3.1 ó 5.1, ó Visual C++ 6.0), ya que es un lenguaje que nos permite usar la mayoría de herramientas lógicas para resolver los problemas.
La mayoría de los problemas se suelen dividir en sup-problemas, cada uno de ellos mas simples que el original para lograr una estructuración del programa y un desarrollo mejor, esto se logra con el uso de funciones o procedimientos, el cual hablaremos mas adelante en este curso, esto nos ayuda a dividir el problema y atacarlos de diferentes ángulos. En programación no hay un sólo camino, ni una formula para resolver los problemas cada problema es un mundo distinto y depende del programador encontrar el camino mas eficiente y fácil para llegar a la solución, esto se logra con constancia y experiencia en la programación, desde luego conocer el lenguaje a mayor profundidad ofrece una ventaja mayor debido a que se pueden usar las herramientas que éste nos ofrece.
Solución del problema
Planteamiento de alternativas de solución
Después de la definición del problema y del análisis de los datos de entrada el proceso continúa con el análisis de las alternativas de solución. Por lo general la solución de un problema puede alcanzarse por distintas vías. Es útil tratar de plantear la mayor cantidad de alternativas posibles de solución pues de esta forma las posibilidades aumentan a favor de encontrar la vía correcta.
Elección de una alternativa
Después de tener todo el repertorio de alternativas es necesario pasar a otra etapa: la elección de la mejor entre todas las posibilidades. Esta fase es muy importante por que de la elección realizada depende del avance final hasta la solución
Desarrollo de la solución
Después de decidir cual es la mejor alternativa de todas se llega a la etapa de la solución. En esta fase, partir de los datos relacionados con la alternativa seleccionada, se aplican las operaciones necesarias para solucionar el problema.
Evaluación de la solución
Luego de haber desarrollado la solución queda aún una etapa, que es la de evaluación, en los procesos industriales a este procedimiento se le llama “control de calidad” y consiste en determinar que la solución obtenida es lo que se esperaba conseguir comprobando que el resultado sea correcto.
Ejecucion de problema
EJECUCIÓN:En informática, ejecutar es la acción de iniciar la carga de un programa o de cualquier archivo ejecutable.
En otras palabras, la ejecución es el proceso mediante el cual una computadora lleva a cabo las instrucciones de un programa informático.
Se pueden ejecutar programas compilados (por ejemplo, en Windows, los .EXE) o programasinterpretados (por ejemplo, los scripts).
Ejecutar un programa implica que éste estará en estado de ejecución y, por ende, en memoria, hasta que se finalice.
Algunas bibliografías extienden la definición de ejecutar e incluyen la carga de archivos que no son ejecutables. Por ejemplo, cuando se ejecuta una imagen JPG y se abre el programa para visualizar la misma, o cuando se ejecuta un sonido MP3 y se abre el reproductor de audio. Técnicamente hablando, lo que está realmente en ejecución es el programa que se encarga de interpretar el archivo no ejecutable.
En Windows, la mayoría de los programas que están en ejecución se listan en el Administrador de tareas, desde donde pueden ser finalizados.
En otras palabras, la ejecución es el proceso mediante el cual una computadora lleva a cabo las instrucciones de un programa informático.
Se pueden ejecutar programas compilados (por ejemplo, en Windows, los .EXE) o programasinterpretados (por ejemplo, los scripts).
Ejecutar un programa implica que éste estará en estado de ejecución y, por ende, en memoria, hasta que se finalice.
Algunas bibliografías extienden la definición de ejecutar e incluyen la carga de archivos que no son ejecutables. Por ejemplo, cuando se ejecuta una imagen JPG y se abre el programa para visualizar la misma, o cuando se ejecuta un sonido MP3 y se abre el reproductor de audio. Técnicamente hablando, lo que está realmente en ejecución es el programa que se encarga de interpretar el archivo no ejecutable.
En Windows, la mayoría de los programas que están en ejecución se listan en el Administrador de tareas, desde donde pueden ser finalizados.En otras palabras, la ejecución es el proceso mediante el cual una computadora lleva a cabo las instrucciones de un programa informático.Se pueden ejecutar programas compilados (por ejemplo, en Windows, los .EXE) o programasinterpretados (por ejemplo, los scripts).Ejecutar un programa implica que éste estará en estado de ejecución y, por ende, en memoria, hasta que se finalice.Algunas bibliografías extienden la definición de ejecutar e incluyen la carga de archivos que no son ejecutables. Por ejemplo, cuando se ejecuta una imagen JPG y se abre el programa para visualizar la misma, o cuando se ejecuta un sonido MP3 y se abre el reproductor de audio. Técnicamente hablando, lo que está realmente en ejecución es el programa que se encarga de interpretar el archivo no ejecutable.En Windows, la mayoría de los programas que están en ejecución se listan en el Administrador de tareas, desde donde pueden ser finalizados.
Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode), o simplemente texto. Este proceso de traducción se conoce como compilación.
PROBLEMAS:
FOR.
1
#include<stdio.h>
#include<conio.h>
main()
{
int digitos,x,num,contador,ceros;
contador=0;
printf("Cuantos digitos quiere ?");
scanf("%d",&digitos);
for (x=1;x<=digitos;x++)
{
printf("Ingrese un numero ");
scanf("%d",&num);
if (num!=0)
{
ceros=0;
}
if (num==0)
{
ceros=1;
}
contador=(contador+ceros);
}
printf("El numero de ceros que ingreso es:%d",contador);
getch();
}
}
#include<conio.h>
main()
{
int digitos,x,num,contador,ceros;
contador=0;
printf("Cuantos digitos quiere ?");
scanf("%d",&digitos);
for (x=1;x<=digitos;x++)
{
printf("Ingrese un numero ");
scanf("%d",&num);
if (num!=0)
{
ceros=0;
}
if (num==0)
{
ceros=1;
}
contador=(contador+ceros);
}
printf("El numero de ceros que ingreso es:%d",contador);
getch();
}
2
#include
<stdio.h>
#include
<conio.h>
main()
{
int a,b,c,x;
printf("Que tabla de multiplicar desea usar");
scanf("%d",&a);
for (x=1; x<=10; x+=1)
{
c=a*x;
printf ("%dX%d=%d\n",a,x,c);
}
getch();
}
3
#include<stdio.h>
#include<conio.h>
main()
{
int x,a,b,d,c;
{
printf("hasta que numero de la serie quiere llegar");
scanf ("%d",&a);
for
(x=1; x<=a ; x+=1)
{
d=0;
b=1;
c=d+b;
printf (" la serie es: %d");
}
}
getch();
}
IF
1
#include<stdio.h>
#include<conio.h>
main()
{
float
a,b,c;
int x;
printf("Escribe que función quieres usar 1 Suma
2 Resta 3Multiplicacion 4 División ");
scanf("%d",&x);
printf("escribe los valores");
scanf("%f",&a);
printf("escribe los valores");
scanf("%f",&b);
if (x==1)
{
c=a+b;
printf("El resultado es
%f",c);
}
else
{
if(x==2)
{
c=a-b;
printf("El resultado es %f",c);
}
else
{
if(x==3)
{
c=a*b;
printf("El resultado es %f",c);
}
else
{
if(x==4)
{
c=a/b;
printf("El resultado es %f",c);
}
}
}
}
getch();
}
}
2
#include<stdio.h>
#include<conio.h>
main()
{
int a,b,c,d,e;
printf("Pregunta
1:En que ano fue la tercera generacion de computadoras?
1.1967-2015 2.1971-1988 ");
scanf("%d",&a);
if (a==2)
{
printf("
Tu respuesta es correcta\n",d);
}
else
{
if(a==1)
{
printf("Fin
del juego ",c);
}
}
printf ("Pregunta
2:Quien invento la Maquina Analitica? 1.Alan Tutring 2.Charles Babbage\n ");
scanf("%d",&b);
if
(b==2)
{
printf("
tu respuesta es correcta\n",d);
}
else
{
if
(b==1)
{
printf("Fin
del juego",c);
}
}
printf("En que
generacion fueron creadas las primeras computadoras
analogicas 1.Primera 2.Segunda \n");
scanf("%d",&e);
if (e==1)
{
printf("Fin
del juego :)",c);
}
else
{
if
(e==2)
{
printf("Felicidades!!!
tu respuesta es correcta\n",d);
}
}
getch();
}
3
#include<stdio.h>
#include<conio.h>
main()
{
Int a,b,c;
printf("Escribe la medida del lado 1");
scanf("%d",&a);
printf("Escribe la medida del lado 2");
scanf("%d",&b);
printf("Escribe la medida del lado 3");
scanf("%d",&c);
if ((a==b)&&(b==c))
{
printf("Es un triangulo Equilatero");
}
else
{
if (((a=b)&& (b!=c))||((a=c)&& (c!=b))||((c=b&&
b!=a))||((a=b&&b!=c)))
{
printf("Es un triangulo Isoceles");
}
else
{
if ((a!=b && b!=c)||(a!=c &&b!=c)||(a!=b && b!=c))
{
printf("Es un triangulo Escaleno");
}
}
}
getch();
CASE.
1
#include<stdio.h>
#include<conio.h>
main()
{
int x;
float a,b,c;
printf("Elige que operación realizar 1.Suma 2.Resta
3.Multiplicacion 4.Division");
scanf("%d",&x);
printf("escribe los valores");
scanf("%f",&a);
printf("escribe los valores");
scanf("%f",&b);
switch (x)
{
case 1:
c=a+b;
printf("su resultado es %f",c);
break:
case 2:
c=a-b;
printf("su resultado es %f",c);
break;
case 3:
c=a*b;
printf("su resultado es %f",c);
break;
case 4:
c=a/b;
printf ("su resultado es %f",c);
break;
}
getch();
}
2
#include<stdio.h>
#include<conio.h>
main()
{
int x;
float r,l,c;
printf("Elige una de las siguientes opciones para calcular el area
1. Circulo 2. Cuadrado 3. Triangulo");
scanf("%d",&x);
switch(x)
{
case 1:
printf ("Introduce la medida de el
radio");
scanf("%f",&r);
c=3.1416*(r*r);
printf("El area del
cuadrado es:%f",c);
break;
case 2:
printf("Introduce la medida de un lado");
scanf("%f",&l);
c=l*l;
printf("El area del
cuadrado es:%f",c);
break;
case 3:
printf("Introduce la medida de un lado");
scanf("%f",&l);
c=l*l/2;
printf("El area de el
triangulo es:%f",c);
break;
}
getch();
}
3
#include<stdio.h>
#include<conio.h>
main()
{
int x;
float Costo,Minutos,Total;
printf
("\n1.America\n2.Europa\n3.Africa\n4.Asia\n5.Oceania");
scanf ("%d",&x);
switch (x)
{
case 1:
printf ("Minutos");
scanf ("%f",&Minutos);
Total=Minutos*3;
printf ("Total de costo de llamada en America:%f",Total);
break;
case 2:
printf ("Minutos");
scanf ("%f",&Minutos);
Total=Minutos*4;
printf ("Total de costo de llamada en Europa:%f",Total);
break;
case 3:
printf ("Minutos");
scanf ("%f",&Minutos);
Total=Minutos*5;
printf ("Total de costo de llamada en Africa:%f",Total);
break;
case 4:
printf ("Minutos");
scanf ("%f",&Minutos);
Total=Minutos*6;
printf ("Total de costo de llamada en Asia:%f",Total);
break;
case 5:
printf ("Minutos");
scanf ("%f",&Minutos);
Total=Minutos*7;
printf ("Total de costo de llamada en Oceania:%f",Total);
break;
}
getch();
}