lunes, 20 de abril de 2009

viernes, 17 de abril de 2009

examensito

Realizar un programa que traduzca de numero o palabra basada en la entrada que le da el usuario; por ejemplo si el usuario le da un cero 0 el sitema debe decir cero en palabra el rango sera de 0 a 5







Realizar un programa que lea un caracter y determine si es vocal o no vocal

jueves, 16 de abril de 2009

Ejercisio que vale por 2 y tarea

Un fabricante de montañas rusas desea un sistema que escanee la altura de los prospectos y determine si son aptos para utilizar el juego el sistema debe de mostrar el mensaje aceptado para utilixar el juego y/o para utilizar el juego el limite de altura es 1.30 mts. Realizar la lectura en centimetros.




Realizar un programa que determine si una persoan puede o no votar.






martes, 14 de abril de 2009

Capitulo 5 (resumen)

ESTRUCTURAS DE SELECCION SENTENCIAS IF Y SWITCH

5.1 Estructuras de control

Las estructuras de control controlan el flujo de ejecución de un programa o función. Las estructuras de control permiten combinar instrucciones o sentencias individuales en una simple unidad lógica con un punto de entrada y un punto de salida.
Las instrucciones o sentencias se organizan en tres tipos de estructuras de control que sirven para controlar el flujo de la ejecución: secuencia, selección (decisión) y repetición. Una sentencia compuesta es un conjunto de sentencias encerradas entre llaves ({ y }) que se utiliza para especificar un flujo secuencial.
El control fluye de la sentencia1 a la sentencia2 y así sucesivamente. Sin embargo, existen problemas que requieren etapas con dos o más opciones o alternativas a elegir en función del valor de una condición o expresión.

5.2 La sentencia if

En C, la estructura de control de selección principal es una sentencia it. La sentencia it tiene dos alternativas o formatos posibles.
La sentencia if funciona de la siguiente manera. Cuando se alcanza la sentencia if dentro de un programa, se evalúa la expresión entre paréntesis que viene a continuación de if. Si expresión es verdadera, se ejecuta Acción; en caso contrario no se ejecuta Acción (en su formato más simple, Acción es una sentencia simple y en los restantes formatos es una sentencia compuesta).

5.3 Sentencia if de dos alternativas: if-else

Un segundo formato de la sentencia if es la sentencia if-else. Este formato de la sentencia if tiene la siguiente sintaxis:



En este formato Acción1 y Accion2 son individualmente, o bien una única sentencia que termina en un punto y coma (;) o un grupo de sentencias encerrado entre llaves. Cuando se ejecuta la sentencia if - else, se evalúa Expresión. Si Expresión es verdadera, se ejecuta Acción1 y en caso contrario se ejecuta Acción.

5.4 Sentencias if-else anidadas

Hasta este punto, las sentencias if implementan decisiones que implican una o dos alternativas. Una sentencia if es anidada cuando la sentencia de la rama verdadera o la rama falsa, es a su vez una sentencia if. Una sentencia if anidada se puede utilizar para implementar decisiones con varias alternativas o multi-alternativas.
La sentencia if anidada tiene tres alternativas. Se incrementa una de las tres variables (num_pos, num_neg y num_ceros) en 1, dependiendo de que x sea mayor que cero, menor que cero o igual a cero respectivamente. Las cajas muestran la estructura lógica de la sentencia if anidada; la segunda sentencia if es la acción o tarea Falsa (a continuación de else) de la primera sentencia if. La ejecución de la sentencia if anidada se realiza como sigue: se comprueba la primera condición (x > O); si es verdadera, num_pos se incrementa en 1 y se salta el resto de la sentencia if. Si la primera condición es falsa, se comprueba la segunda condición (x <>


5.4.1. Sangría en las sentencias if anidadas

El formato multibiturcación se compone de una serie de sentencias if anidadas, en cada línea se puede escribir una sentencia if.


5.4.2. Comparación de sentencias if anidadas y secuencias de sentencias if

Los programadores tienen dos alternativas: 1) usar una secuencia de sentencias if; 2) una única sentencia if anidada. Por ejemplo, la sentencia if del Ejemplo 5.7. se puede reescribir como la siguiente secuencia de sentencias if:

5.5 Sentencia de control switch

La sentencia switch es una sentencia C que se utiliza para seleccionar una de entre múltiples alternativas. La sentencia switch es especialmente útil cuando la selección se basa en el valor de una variable simple o de una expresión simple denominada expresión de control o selector. El valor de esta expresión puede ser de tipo int o char, pero no de tipo float ni double.
La expresión de control o selector se evalúa y se compara con cada una de las etiquetas de case. La expresión selector debe ser un tipo ordinal (por ejemplo, it, char, pero no float o string). Cada etiqueta es un valor único, constante y cada etiqueta debe tener un valor diferente de los otros. Si el valor de la expresión selector es igual a una de las etiquetas case —por ejemplo, etiquetar— entonces la ejecución comenzará con la primera sentencia de la secuencia sentencia1 y continuará hasta que se encuentra el final de la sentencia de control switch, o hasta encontrar la sentencia break.
Es habitual que después de cada bloque de sentencias correspondiente a una secuencia se desee terminar la ejecución del switch; para ello se sitúa la sentencia break como última sentencia del bloque. La sentencia break; hace que siga la ejecución en la siguiente sentencia al switch.

5.5.1. Caso particular de case

Está permitido tener varias expresiones case en una alternativa dada dentro de la sentencia switch. Por ejemplo, se puede escribir:


5.5.2. Uso de sentencias switch en menús

La sentencia if - else es más versátil que la sentencia switch y se pueden utilizar unas sentencias if else anidadas o multidecisión, en cualquier parte que se utilice una sentencia case. Sin embargo, normalmente, la sentencia switch es más clara. Por ejemplo, la sentencia switch es idónea para implementar menús. Un menú en un programa de computadora hace la misma función: presentar una lista de alternativas en la pantalla para que el usuario elija una de ellas.

5.6 Expresiones condicionales: el opreador ?:

Las sentencias de selección (if y switch) consideradas hasta ahora, son similares a las sentencias previstas en otros lenguajes, tales como Pascal y Fortran 90. C tiene un tercer mecanismo de selección, una expresión que produce uno de dos valores, resultado de una expresión lógica o booleana (también denominada condición). Este mecanismo se denomina expresión condicional. Una expresión condicional tiene el formato C ? A : B y es realmente una operación ternaria (tres operandos) en el que C, A y B son los tres operandos y ? : es el operador.

Se evalúa condición, si el valor de condición es verdadera (distinto de cero) entonces se devuelve como resultado el valor de expresión1 si el valor de condición es falsa (cero) se devuelve como resultado el valor de expresion2. Una aplicación del operador condicional (?:) es llamar a una de dos funciones según el valor de la variable.


5.7 Evaluacion al cortocircuito de expresiones logicas

Cuando se evalúan expresiones lógicas en C se emplea una técnica denominada evaluación en cortocircuito. Este tipo de evaluación significa que se puede detener la evaluación de una expresión lógica tan pronto como su valor pueda ser determinado con absoluta certeza. Por ejemplo, si el valor de (soltero == ‘s‘) es falso, la expresión lógica (soltero == ‘s’) && (sexo ‘h’) && (edad > 18) && (edad <= 45) será falsa con independencia de cual sea el valor de las otras condiciones. La razón es que una expresión lógica del tipo falso && (...) debe ser siempre falsa, cuando uno de los operandos de la operación AND es falso. En consecuencia no hay necesidad de continuar la evaluación de las otras condiciones cuando (soltero == ‘s’) se evalúa a falso.


El compilador C utiliza este tipo de evaluación. Es decir, la evaluación de una expresión lógica de la forma, a && a. se detiene si la subexpresión a de la izquierda se evalúa a falsa.


C realiza evaluación en cortocircuito con los operadores && y , de modo que evalúa primero la expresión más a la izquierda de las dos expresiones unidas por && o bien por . Si de esta evaluación se deduce la información suficiente para determinar el valor final de la expresión (independiente del valor de la segunda expresión), el compilador C no evalúa la segunda expresión.


5.9 Errores frecuentes de programacion

Uno de los erores mas comunes es una sentencias if es utilizar un operador de asignacion (=) en lugar de un operador de igualdad (==).
en una sentencia if anidada cada clausula else coesponde con la if precedente mas cecana.
las comparaciones con operadores == de contidades algebraicamente iguales pueden poducir una expresion logica falsa.
cuando en una sentencia switch o en un bloqueo de sentencias falta una de las llaves, aparece un mensaje de orror.
el selector de una sentencia switch debe se de tipo entero o compatible entero. asi las contantes reales.
cuando se utiliza una sentencia switch asegurese que el selecto de switch y las etiquetas case son del mismo tipo.
normalmente debera escribirr la sentencia break despues de la accion que se desea que ejecute cada uno de los case de la sentencia switch.











lunes, 30 de marzo de 2009

Cuestionario de la unidad 4

1.Defina los siguientes conceptos y proporciones al menos tres ejemplos.-
operadores aritmeticos
Sirven para realizar operaciones aritméticas básicas.
Ejemplos: + suma (x+y)
- resta (b-c)
% división entera: resto (b % 5)


operadores logicos Se utilizan con expresiones para devolver un valor verdadero “cualquier entero distinto de cero”. O un valor falso “0”
Ejemplos: Negociación (!) ! (x >= y)
Y lógica (&&) m <> j
O lógica ll m = 5 l l n ! = 10
operadores relacionales C no tiene de datos lógicos o booleanos (lógicos) para representar verdadero y falso. En su lugar se utiliza el tipo “int” para este propósito, con el valor entero 0 que representa a falso y distinto de cero a verdadero.
Ejemplos: == Igual a a==b
!= No igual a a ! = b > Mayor que a > b

2.Que son las reglas de prioridad y asociatividad.- La prioridad o precedencia de operadores determina el orden en el que se aplican los operadores a un valor. Los operadores C vienen en una tabla con quince grupos. Los operadores del grupo 1 tienen mayor prioridad que los del grupo 2, y así sucesivamente.

3.Proporcione un ejemplo de cada tipo de operador de asignacion que existe y describa su funcion.-

4.Explique que son los operadores de incremento y decremento, proporcione dos ejemplo de cada uno y su funcion.- De las características que incorpora C, una de las mas útiles son los operadores de incremento ++ y decremento --. Los operadores ++ y --, denominados de incrementación y decrementacion, suman o restan 1 a su argumento, respectivamente, cada vez que se aplican a una variable.
Ejemplo: INCREMENTACION
++n n += 1
DECREMENTACION
--n
n -= 1
++n produce un valor que es mayor en uno que el de n++, y --n produce un valor que es menor en uno que el valor de n--.


5.Liste los operadores relacionables, proporcione un ejemplo y su funcion.-
6.Construlla las tablas de verdad de las operaciones and y or.-

Tabla de verdad del operador lógico AND (&&)

Tabla de verdad del operador lógico OR (ll)
7.Que es un operador de direccion.Cuales existen y explique su funcionamiento.- Son operadores que permiten manipular las direcciones de las variables y registro en general.
* Lee el valor apuntado por la expresión. El operando se corresponde con un puntero y es el resultado es del tipo apuntado.
& Devuelve un puntero al objeto utilizado como operando, que debe ser un Ivalue (variable dotada de una dirección de memoria). El resultado es un puntero de tipo idéntico al del operando.
· Permite acceder a un miembro de un dato agregado (unión, estructura).-> Accede a un miembro de un dato agregado (unión, estrucutura) apuntado por el operando de la izquierda.

8.Proporcione 3 ejemplos de operadores condicionales y su funcion.-

Ejemplos:
expresión_c? expresión_v: expresión_f;

Se evalúa expresión_c y su valor (cero = falso, distinto de cero = verdadero) determina caul es la expresión a ejecutar; si la condición es verdadera e ejecuta expresión_v y si es falsa se ejecuta expresión_f.

9.Proporcione 2 ejemplos que utilizen el operador coma y explique su funcion.-

Ejemplos: i ++, j++ ; equivale a i++ ; j++
i++, j++, k++; equivale a i++ ; j++; k++;

10.Explique la funcion del operador corchete y proporciones 2 ejemplos.-Sirve para dimensionar los arrays y designar un elemento de un array.
Ejemplos:
doublé v [20]; /* define un array de 20 elementos */


printf (“v [2] = %e”, v [2] ); /* defiene el elemento 2 de v */

11.A que se refiere la conversion de tipo de datos.- Con frecuencia, se necesita convertir un valor de un tipo a otro sin cambiar el valor que representa. Las converciones de tipos pueden ser implícitas (ejecutadas automáticamente) o explicitas (solicitadas espicificamente por el programador). C hace muchas converciones de tipos automáticamente:
· C convierte valores cuando se asigna un valor de un tipo a una variable de otro tipo.
· C convierte valores cuando se combinan tipos mixtos en expresiones.
· C convierte valores cuando se pasan argumentos a funciones.

12.Liste los operadores con mayor grado de prioridad al menos 4 niveles.-


viernes, 27 de marzo de 2009

jueves, 19 de marzo de 2009

lunes, 16 de marzo de 2009

RESUMEN CAPITULO III

Aritmetica con caracteres C
Dada la corrspondencia entre un caracter y su codigo ASCII, es posible realizar operaciones aritmetica sobre datos caracteres.
char c;
c= 'T' + 5
/* suma 5 al caracter ASCII*/

Constantes Cadena
Es una secuencia de caractere encerrados entre dobles comillas.
Algunos ejemplos:
"123"
"12 de octubre 1492"
"esto es una cadena".
Se Puede escribir varias cadenas, Terminando cada linea con "\"
"esto es una cadena\que tiene dos lineas"
Se puede concatenar cadenas:
"ABC"
"DEF"
"GHI"

Constantes Definidas (Simbolicas):
Las constates pueden recibir nombres simboliicos mediante la directiva #define.
#define NUEVALINEA \n
#define PI 3.141592
#define VALOR 54
C Sustituye los valores \n, 3.141592 y 54 cuando se encuentra las constantes simbolicas NUEVALINEA, PI y VALOR.

Constante Enumeradas:
Permiten crear listas de elementos afines. un ejemplo tipico es una constante enumerada de lista de colores, que se puede declarar como:

enum: Colores {Rojo, Naranja, Amrillo, Verde, Azul, Violeta} ;

Cuando se procesa esta sentencia, el compliador asigna un valor que comienza en 0 a cada elemento enumerado; asi, rojo quivale a 0, Naranja es 1. El compilador enumera los identificadores por usted.

Constantes Declaradas const y volatile.
El cualificador const permite dar nombres simbolicos a constantes a modo de otros lenguajes, como Pascal. el formate general para crear una constante es:

const tipo nombre = valor;

Se omite tipo, C utiliza int (entero por defecto)

const int Meses = 12;
const int OCTAL = 0233;

La palabra reservada volatile actua como const, pero su valor puede ser modificado, no solo por el propio programa, sino tambien por el hardware o por el software del sistema.

Diferencias entre const y #define.
Las definiciones const especifican tipos de datos, terminan con punto y coma y se inicializan como las variables. La directiva #define no especifica tipos de datos, no utilizan el operador de asignacion (=) y no termina con punto y coma.

Variables
En C una variable es una posicion con nombre en memoria donde se almacena un valor de un cierto tipo de dato. las variables pueden almacenar todo tipo de datos: cadenas, numeros y estructuras.Una variable por lo normal tiene un nombre que describe su proposito. El procedimiento para definir (crear) una variable es escribir el tipo de dato, el identificarlo o nombre de la variable y, en ocasiones , el valor inicial que tomara. Por Ejemplo,char Respuesta;

Declaracion:
Una declaracion de una variable es una sentencia que proporciona informacion de la variable al complidar C. su sintaxis es:
tipo variable
tipo: es el nombre de un tipo de datos conocidos por el C.
variable: es un identificador (nombre) valido en C.

Es preciso declarar las variables antes de utilizarlas. Se puede declarar una variable al principio de un archivo o de un bloque de codigo.
/* variable al principio del archivo */
#include
int MiNumero;
int main()
{

Inicializacion de Variables
El formato general de una declaracion de inicializacion es:tipo nombre_variable = expresion.Expresion: es cualquier expresion valida cuyo valor es del mismo tipo que tipo.Las variables se pueden inicializar a la vez que se declaran, o bien, inicializarse despues de la declaracion. el primer metodo es el mejor en la mayoria de los casos, ya que combina la definicion de la variable con la asignacion de su valor inicial.
char respuesta = 'S';
int contador = 1;
float peso = 156.45;

Estas acciones crean variables respuesta, contador, peso, que almacenan en memoria los valores respectivos situados a su derecha.

Declaracion o Definicion:
Una declaracion introduce un nombre de una variable y asocia un tipo con la variable. Una definicion es una declaracion que asigna simultaneamente memoria a la variable.
double x; /*declara el nombre de la variable x de tipo double */char c_var; /*declara c_var de tipo char */

Duracion de una Variable:
Dependiendo del lugar donde se definan las variables de C, estas se pueden utilizar en la totalidad del programa, dentro de una funcion o pueden existir solo temporalmente dentro de un bloque de una funcion. La zona de un programa en la que una variable esta activa se denomina, normalmente, ambito o alcance (<>).El ambito (alcance) de una variable se extiende hasta los limites de la definicion de su bloque. Los tipos basicos de variables en C son:
- Variables Locales;
- Variables Globales;
- Variables Dinamicas.

Variables Locales:
Son aquellas definidas en el interior de una funcion y son visibles solo en esa funcion especifica.
-Una variable local no pude ser modificada por ninguna sentencia externa a la funcion.
-Los nombres de las variables locales no han de ser unicos.
-Las variables locales de las funciones no existen en memoria hasta que se ejecuta la funcion.

Las variables locales se llaman tambien automaticas o auto, ya que dichas variables se crean automaticamente en la entrada a la funcion y se liberan tambien automaticamente cuando se termina la ejecucion de la funcion.
#include
int main ()
{
int a, b, c, suma, numero; /* variables locales
printf ("Cuantos Numeros a Sumar:");scanf ("%d", &numero);

Variables Globales:
son variables que se declaran fuera de la funcion y por defecto (omision) son visibles a cualquier funcion, incluyendo main ()
#include
int a, b, c; /*declaracion de varibales Globales.
int main ()
{
int valor; /*declaracion de variable local.

Variables Dinamicas:
Una variable dinamica se crea y libera durante la ejecucion del programa. la diferencia entre una variable local y una variable dinamica es que la variable dinamica se crea tras su peticion , es deci a su voluntad , y se libera cuando ya no se necesita.

Entradas y Salidas:
La biblioteca C proporciona facilidades para entrada y salida, para lo que todo programa debera tener el archivo de cabecera stdio.h . En C la entrada y salida se lee y escribe de los depositivos estandar de entrada y salida, se denomina stdin y stdout respectivamente. La salida, normalmente, es a pantalla del ordenador, la entrada se capta del teclado.en el archivo stdio.h estan definidas macros, constates, variables y funciones que permiten intercambiar datos con el exterior.

3.12.1. SALIDA
La salida de datos de un programa se puede dirigir a disversos dispositivos, pantalla, impresora, archivos.
Los codigos de formato mas utilizados y su significado:
%d: El dato se convierte a entero decimal.
%o: El dato entero se convierte en octal.
%x: El dato entero se convierte a hexadecimal.
%u: El dato entero se convierte a entero sin signo.
%c: El dato entero se considera de tipo caracter.
%e: El dato se considera de tipo float. Se convierte a notacion cientifica.
%f: El dato se considera de tipo float. Se convierte a notacion decimal, con parte entera y los digitos de precision.
%g: El dato se considera de tipo float. Se convierte segun el codigo %e o %f dependiendo de cual sea la representacion mas corta.
%s: El dato ha de ser una cadena de caracteres.
%lf: El dato se considera de tipo double.

C utiliza "secuencias de escape" para visualizar carcteres que no estan representados por simbolos tradicionales, tales como \a,\b, etc.




caracteres de secuencias de escape

Secuencia de escape Significado

\a Alarma

\b Retroceso de espacio

\f Avance de pagina

\n Retorno de carro y avance de linea

\r Retorno de carro

\t Tabulacion

\v Tabulacion vertical

\\ Barra inclinada

\? Signo de interrogacion

\" Dobles comillas

\000 Numero octal

\xhh Numero hexadecimal

\0 Cero, nulo (ASCII 0)


3.12.2. ENTRADA

La entrada de datos a un programa puede tener diversas fuentes, teclado, archivos en disco... La entrada que consideramos ahora es a traves del teclado, asociado al archivo estandar de entrada "stdin". La funcion mas utilizada, por su versatilidad, para entrada formateada es scanf().

El archivo de cabecera stdio.h de la biblioteca C proporciona la definicion (el prototipo) de scanf(), asi como de otras funciones de entrada o de salida. la forma general que tiene la funcion scanf()


scanf (cadena_de control, var1, var2, var3,...)

cadena_de_control contiene los tipos de los datos y si se desea su anchura.

var1,var2 ... variables del tipo de los codigos de control.



Los codigos de formato mas comunes son los ya indicados en la salida. Se pueden añadir, como sufijo del codigo, ciertos modificadores como 1 o L. El significado es "largo", aplicado a float (%lf)

indica tipo double, aplicado a int (%ld) indica entero largo.


int n; double x;

scanf ("%d%lf",&n,&x);


La entrada tiene que ser de la forma

134 -1.4E-4


En este caso la funcion scanf() devuelve n=134 x=-1.4E-4 (en doble precision). Los argumentos var1,var2,... de la funcion scanf() se pasan por direccion o referencia pues van a ser modificados por la funcion para devolver los datos. Por ello necesitan el operador de direccion, el prefijo &.

Las variables que pasan a scanf() se transmiten por referencia para poder ser modificadas y transmitir los datos de entrada, para ello se hacen preceder de &.

La funcion scanf() termina cuando ha cpatado tantos datos como codigos de control se han especificado, o cuando un dato no coincide con el codigo de control especificado.



3.12.3. SALIDA DE CADENAS DE CARACTERES

Con la funcion printf() se puede dar salida a cualquier dato, asociandole el codigo qe le correponde. En particular, para dar salida a una cadena de caracteres se utiliza el codigo %s.Asi,

char arbol []= "Acebo";

printf ("%s\n",arbol);

Para salida de cadenas, la biblioteca C proporciona la funcion especifica puts(). Tiene un solo argumento, que es una cadena de caracteres. Escribe la cadena en la salida estandar (pantalla) y añade el fin de linea. Asi,

puts (arbol);

muestra en pantalla lo mismo que printf ("%s\n",arbol);



3.12.4. ENTRADA DE CADENAS DE CARACTERES

La entrada de una cadena de caracteres se hace con la funcion mas general scanf() y el codigo %s

La biblioteca de C tiene una funcion especifica para captar una cadena de caracteres, la funcion gets(). Capta del dispositivo estandar de entrada una cadena de caracteres,termina la capacitacion con un retorno de carro. El siguiente ejemplo muestra como captar una linea de como maximo 80 caracteres.

la funcion gets() tiene un solo arguemento,una variable tipo cadena.Capta la cadena de entrada y la devuelve en la variable pasada como argumento.

gets(variable_cadena);

Tnato cn scanf() como con gets(), el programa inserta al final de la cadena el caracter que indica fin de cadena, el carcter nulo,\0.Siempre hay que definir las cadenas con un espacio mas del previsto como maxima longitud para el caracter fin de cadena.


3.13. COMPILACION DE PROGRAMAS C EN "UNIX" Y "LINUX"

La forma de compilar programas C en el entorno UNIX varia considerablemente entre las diferentes plataformas UNIX. Las versiones de linux y freesd 3.4 de unix usan el potente compilador GNU.

Otras plataformas UNIX proporcionan sus propios compiladores de C y C++,las cuales difieren substancialmente en las opciones que permiten del compilador de GNU, asi como en los mensajes que se producen y su capacidad de optimizacion.
3.13.1. ORDEN DE COMPILACION CC
La mayoria de las plataformas UNIX invocan sus compiladores de C con el nombre "cc". Las plataformas Linux y FreeBSD tiene el nombre de comando "gcc", ademas del nombre "cc". Algunas veces el compilador de GNU es instalado como "gcc" en plataformas comerciales para distinguirlo del estandar. Por ejemplo, HP incluye un compilador no ANSI con su operativo HPUX, que es denominado el copilador envuelto (este compilador es suficiente para reconstruir un nuevo kernel para HPUX). El compilador conforme con POSIX (estandar) "c89". La plataforma IBM AIX 4.3 soporta un compilador extendido de C, cc, y un compilador de ANSI C,xlc 0 c89. La diferencia entre los compiladores "xlc" y "c89" en AIX son las opciones por defecto configuradas.


jueves, 12 de marzo de 2009

3.6


el programa imprime la frase "tambor de hojalata" despues imprime T una vez definada esta

3.5

el programa hace que se imprima una pregunta y con poner las 2 primeras variables hace que se impriman

miércoles, 11 de marzo de 2009

3.4


el programa eejecuta que se escuche un sonido,pero como no habia bocinas no se pudo oir y no se sabe si funciona o no.

martes, 10 de marzo de 2009

lunes, 9 de marzo de 2009

viernes, 6 de marzo de 2009

martes, 3 de marzo de 2009

3.1 y 3.2

/*archivo "midirec.c"*/
printf(

tarea!!!!!

# include
main ()
{
printf("_______000000000000000000_______\n");
printf("_____000000__00000__0000000_____\n");
printf("____0000000__00000__00000000____\n");
printf("___00000000__00000__000000000___\n");
printf("__000000000__00000__0000000000__\n");
printf("_0000000000__00000__00000000000_\n");
printf("_0000000000__00000__00000000000_\n");
printf("_0000000000__00000__00000000000_\n");
printf("_000000000000000000000000000000_\n");
printf("_000000__________________000000_\n");
printf("_000000__________________000000_\n");
printf("__000000_________________00000__\n");
printf("___0000000_____________000000___\n");
printf("_____0000000_________0000000____\n");
printf("_______ 00000000000000000_______\n");
printf("___________00000000000__________\n");
printf("________________________________\n");
return 0;
}

viernes, 27 de febrero de 2009

Eje 02

Relaizar un programa que despliegue los siguientes datos; cada dato en una linea diferente y a doble espacio o linea



nombre,direccion,colonia,telefono,escuela,carrera


#include
main()

{

printf("soy mario ayala\n\n");

printf("vivo en la avenida felix contreras y calle 24\n\n");

printf("en la colonia residencias\n\n");

printf("mi telefono es 5344894\n\n");

printf("estudio en el centro de estudios superiores del estado de sonora\n\n");

printf("estudio la carrerade ingenieria industrial en electronica\n\n");

return 0;

}

Primer Programa

#include
#include
main()
{
printf("hola");
printf("soy mario");
printf("estudio programacion");
return 0;
}

domingo, 22 de febrero de 2009

TAREA

3.1 ESTRUCTURA GENERAL DE UN PROGRAMA EN C
Un programa en C se compone de una o mas funciones. Una de las funciones debe ser obligatoriamente main. una funcion en C es un grupo de instrucciones que realiza una o mas acciones. Asimismo, un programa contendra una serie de directivas #include que permitiran incluir en el mismo archivos de cabecera que a su vez constaran de funciones y datos predefinidos en ellos.
De un modo mas explicito, un programa C puede incluir:
Directivas de preprocesador;
Declaraciones globales;
La funcion main ( ); int main ( )
Funciones definidas por el usuario;
Comentarios del programa
Advertencia
El programa mas corto del C es el <> que no hace nada.
La sentencia return o; no es obligatoria en la mayoria de los compiladores, aunque algunos emiten un mensaje de advertencia si se omite.
3.1.1. DIRECTIVAS DEL PROCESADOR
El procesador en un programa C se puede considerar como un editor de texto inteligente que consta de directivas (instrucciones al compilador antes de que se compile el programa principal). Las dos directivas mas usuales son #include y #define.
Todas las directivas del procesador comienzan con el signo del libro o <> (#), que indica al compilador que lea las directivas antes de compilar la parte (funcion) principal del programa.Las directivas son instrucciones el compilador. Las directivas no son generalmente sentencias -observese que su linea no termina en punto y coma-, sino intrucciones que se dan al compilador antes de que el programa se compile. Aunque las directivas pueden definir macros, nombres de constantes, archivos fuente adicionales, etc., su uso mas frecuente en C es la inclusion de archivos de cabecera.
Existen archivos de cabecera estandar que se utilan ampliamente, tales como stdio.h, stdlib.h, math.h, string.h y se utilizaran otros archivos de cabecera definidos por el usuario para diseño estructurado.La directiva #include indica al compilador que lea el archivo fuente que viene a continuacion de ella y su contenido lo inserte en la posicion donde se encuentra dicha directiva. Estos archivos se denominan archivos de cabecera o archivos de inclusion.
Los archivos de cabecera (archivos con extension .h contienen codigo fuente C) se situan en un programa C mediante la directiva de preprocesador #include con una intrucion que tiene el siguiente formato:#include o bien #include "nombrearch.h"
Nombrearch debe ser un archivo de texto ASCII (su archivo fuente) que reside en su disco el archivo de cabecera mas frecuente es stdio.h.
3.1.2. DECLARACIONES GLOBALES
Las declaraciones globales indican al compilador que las funciones definidas por el usuario o variables asi declaradas son comunes a todas las funciones de su programa. Las declaraciones globales se situan antes de la funcion main (). Si se declara global una variable grado_clase del tipo int grado_clase; cualquier funcion de su programa, incluyendo main (), puede acceder a la variable grado_clase.
La zona de declaraciones globales de un programa puede incluir declaraciones de variables ademas de declaraciones de funcion. Las declaraciones de funcion se denominan prototipos int media (int a, int b).
3.1.3. FUNCION MAIN ()
La sentencia incluida entre las llaves { . . . } se denominan bloque. Un programa debe de tener solo una funcion main (). Si se intenta hacer dos funciones main () se produce un error ademas de la funcion main (), un programa C consta de una coleccion de funciones.
Una funcion C es un subprograma que devuelve un unico valor, un conjunto de valores o realiza alguna tarea especifica tal como E/S.
En un programa corto, el programa completo puede incluirse totalmente en la funcion main (). Un programa largo, sin embargo, tiene demasiados codigos para incluirlos en esta funcion. La funcion main() en un programa largo consta practicamnte de llamadas a las funciones definidas por el usuario. El programa siguiente se compone de tres funciones: obtenerdatos () , alfabetizar () y verpalabras () que invocan sucesivamente.
3.1.4. FUNCIONES DEFINIDAS POR EL USUARIO
Un programa C es una coleccion de funciones. Todos los programas se construyen apartir de una o mas funciones que se integran para crear una aplicacion. Todas las funciones contienen una o mas sentencias C se crean generalmente para realizar una unica tarea, como imprimir la pantalla, escribir un archivo o cambiar el color de la pantalla. Se pueden declarar y ejecutar un numero de funciones casi ilimitado en un programa C.
Las funciones definidas por el usuario se invocan por su nombre y los parametros opcionales que puedan tener. Despues de que la funcion es llamada, el codigo asociado con la funcion se ejecuta y, acontinuacion, se retorna a la funcion llamadora.
Todas las funciones tienen nombre y reciben una lista de valores. Se pueden asignar cualquier nombre a su funcion, pero normalmente se procura que dicho nombre describa el proposito de la funcion. En C, las funciones requieren una declaracion o prototipo en el programa:
void trazarcurva ( );
Una declaracion de funcion indica al compilador el nombre de la funcion por el que esta sera invocada en el programa. Si la funcion no se define, el compilador informa de un error. La palabra reservada void significa que la funcion nom devuelve un valor.
void contarvocales ( char caracter ).
3.1.5. COMENTARIOS
Un comentario es cualquier informacio que se añade a su archivo fuente para proporcionar documentacion de cualquier tipo. El compilador ignora los comentarios, no realiza ninguna tarea concreta. El uso de comentarios es totalmente opcional, aunque dicho uso es muy recomendable.
3.2 CREACION DE UN PROGRAMA
Una vez creado un programa en C, se debe ejecutar. ¿Cómo realizar esta tarea? Los pasos a dar dependerán del compilador C que utilice.
Utilizar un editor de texto para escribir el programa y grabarlo en un archivo. Este archivoconstituye el código fuente de un programa.
Compilar el código fuente. Se traduce el código fuente en un codigo objeto (extensión . ob j ) (lenguaje máquina entendible por la computadora). Un archivo objeto contiene instrucciones en lenguaje máquina que se pueden ejecutar por una computadora. Los archivos estándar C y los de cabecera definidos por el usuario son incluidos (#include) en su código fuente por el preprocesador. Los archivos de cabecera contienen información necesaria para la compilación, como es el caso de stdi0.h que contiene información scanf() y de printf().
Enlazar el código objeto con las bibliotecas correspondientes. Una biblioteca C contiene código objeto de una colección de rutinas o funciones que realizan tareas, como visualizar informaciones en la pantalla o calcular la raíz cuadrada de un número. El enlace del código objeto del programa con el objeto de las funciones utilizadas y cualquier otro código empleado en el enlace, producirá un código ejecutable. Un programa C consta de un número diferente de archivos objeto y archivos biblioteca.
Para crear un programa se utilizan las siguientes etapas:
1. Definir su programa.
2. Definir directivas del preprocesador.
3. Definición declaraciones globales.
4. Crear main ( ) .
5. Crear el cuerpo del programa.
6. Crear sus propias funciones definidas por el usuario.
7. Compilar, enlazar, ejecutar y comprobar su programa.
8. Utilizar comentarios.
3.3 EL PROCESO DE EJECUCION DE UN PROGRAMA EN C
Un programa de computadora escrito en un lenguaje de programación (por ejemplo, C) tiene forma de un texto ordinario. Se escribe el programa en una hoja de papel y a este programa se le denomina programa texto o codigo fuente. Considérese el ejemplo sencillo:
#include
int main()
{
printf ("Longitud de circunferencia de radio 5: %f" ,2*3.1416*5) ;return 0;
}
Una vez editado un programa, se le proporciona un nombre. Se suele dar una extensión al nombre (normalmente .c, aunque en algunos sistemas puede tener otros sufijos).La siguiente etapa es la de compilación. En ella se traduce el código fuente escrito en lenguaje C acódigo máquina (entendible por la computadora). El programa que realiza esta traducción se llama cornpilador. Cada compilador se construye para un determinado lenguaje de programación (por ejemplo C); un compilador puede ser un programa independiente (como suele ser el caso de sistemas operativos como VMS, UNIX, etc.) o bien formar parte de un programa entorno integrado de desarrollo (EID). Los programas EID contienen todos los recursos que se necesitan para desarrollar y ejecutar un programa, por ejemplo, editores de texto, compiladores, enlazadores, navegadores y depuradores.Cada lenguaje de programación tiene unas reglas especiales para la construcción de programas que se denomina sintaxis. El compilador lee el programa del archivo de texto creado anteriormente y comprueba que el programa sigue las reglas de sintaxis del lenguaje de programación.
El archivo objeto contiene sólo la traducción del código fuente. Esto no es suficiente para ejecutarrealmente el programa. Es necesario incluir los archivos de biblioteca (por ejemplo, en el programa area. c , s t d i o . h). Una biblioteca es una colección de código que ha sido programada y traducida y lista para utilizar en su programa.
El proceso de ejecución de un programa no suele funcionar a la primera vez; es decir, casi siempre hay errores de sintaxis o errores en tiempo de ejecución. El proceso de detectar y corregir errores se denomina depuración o puesta a punto de un programa.
Se comienza escribiendo el archivo fuente con el editor. Se compila el archivo fuente y secomprueban mensajes de errores. Se retorna al editor y se fijan los errores de sintaxis. Cuando elcompilador tiene éxito, el enlazador construye el archivo ejecutable. Se ejecuta el archivo ejecutable. Sise encuentra un error, se puede activar el depurador para ejecutar sentencia a sentencia. Una vez que se encuentra la causa del error, se vuelve al editor y se repite la compilación. El proceso de compilar, enlazar y ejecutar el programa se repetirá hasta que no se produzcan errores.
Etapas del proceso

El codigo fuente (archivo del programa) se crea con la ayuda del editor de texto.
El compilador traduce el archivo texto en un archivo objeto.
El enlazador pone juntos a diferentes archivos objetos para poner un archivo ejecutable.
El sistema operativo pone el archivo ejecutable en la memoria central y se ejecuta el programa.
3.4 DEPURACION DE UN PROGRAMA EN C
Rara vez los programas funcionan bien la primera vez que se ejecutan. Los errores que se producen en los programas han de ser detectados, aislados (fijados) y corregidos. El proceso de encontrar errores se denomina depuración del programa.
La corrección del error es probablemente la etapa más fácil, siendola detección y aislamiento del error las tareas más difíciles.Existen diferentes situaciones en las cuales se suelen introducir errores en un programa.
Dos de lasmás frecuentes son:1. Violación (no cumplimiento) de las reglas gramaticales del lenguaje de alto nivel en el que se escribe en el programa
2. Los errores en el diseño del algoritmo en el que está basado el programa.
Cuando el compilador detecta un error, visualiza un mensaje de error indicando que se ha cometido un error y posible causa del error. Desgraciadamente los mensajes de error son difíciles de interpretar y a veces se llegan a conclusiones erróneas. También varían de un compilador a otro compilador. A medida que se gana en experiencia, el proceso de puesta a punto de un programa se mejora considerablemente.
3.4.1. ERRORES DE SINTAXIS
Los errores de sintaxis son aquellos que se producen cuando el programa viola la sintaxis, es decir, las reglas de gramática del lenguaje. Errores de sintaxis típicos son: escritura incorrecta de palabras reservadas, omisión de signos de puntuación (comillas, punto y coma.. .). Los errores de sintaxis son los más fáciles de fijar, ya que ellos son detectados y aislados por el compilador.
3.4.2. ERRORES LOGICOS
Un segundo tipo de error importante es el error lógico, ya que tal error representa errores delprogramador en el diseño del algoritmo y posterior programa. Los errores lógicos son más difíciles de encontrar y aislar ya que no suelen ser detectados por el compilador.
3.4.3. ERRORES DE REGRESION
Los errores de regresión son aquellos que se crean accidentalmente cuando se intenta corregir un error lógico. Siempre que se corrige un error se debe comprobar totalmente la exactitud (corrección) para asegurarse que se fija el error que se está tratando y no produce otro error. Los errores de regresión son comunes, pero son fáciles de leer y corregir. Una ley no escrita es que: «un error se ha producido, probablemente, por el último código modificadon.

3.4.4. MENSAJES DE ERROR
Los compiladores emiten mensajes de error o de advertencia durante las fases de compilación, de enlace o de ejecución de un programa.Los mensajes de error producidos durante la compilación se suelen producir, normalmente, porerrores de sintaxis y suele variar según los compiladores; pero, en general, se agrupan en tres grandes bloques:

Errores fatales. Son raros. Algunos de ellos indican un error interno del compilador. Cuando ocurre un error fatal, la compilación se detiene inmediatamente, se debe tomar la acción apropiada y a continuación se vuelve a iniciar la compilación.
Errores de sintaxis. Son los errores típicos de sintaxis, errores de línea de órdenes y errores de acceso a memoria o disco. El compilador terminará la fase actual de compilación y se detiene.
Advertencias (warning). No impiden la compilación. Indican condiciones que son sospechosas, pero son legítimas como parte del lenguaje.

miércoles, 11 de febrero de 2009

GUIA DEL EXAMEN




ELEMENTOS DEL DIAGRAMA DE FLUJO (SIMBOLOS)


Algoritmo: es un método para resolver un problema mediante una serie de pasos precisos, definidos y finitos.

Computadora: es un dispositivo eléctrico, utilizado para procesar información y obtener resultados, capaces de ejecutar cálculos y tomar dediciones a velocidades más rápidas que el hombre.

Hardware: es el equipo físico o los dispositivos asociados con una computadora.

Software: conjunto de instrucciones dadas, el conjunto de instrucciones que indica a la computadora aquello que debe hacer.

Dispositivos de almacenamiento: Memoria principal, memoria ROM, procesador, microprocesadorSecundarios: diskette, cd, dvd. Cinta magnética.

Lenguaje de programación: sirve para escribir programas que permiten la comunicación usuario/maquina.

Interprete: convierte las instrucciones escritas en lenguaje de programación en las instrucciones escritas en lenguaje maquina que esta puede entender.

Lenguaje maquina: un sistema de codificación nativo de la maquina y la escritura de programas secuénciales de 0 y 1.

Ensambladores: son programas que traducen otros programas escritos en códigos neumático en instrucciones numéricos en lenguaje maquina que son compatibles y legibles por la maquina.

Copiladores: son programas de alto nivel como C, JAVA, que ocupan ser traducidos a código maquina.

Lenguaje C: es el lenguaje de programación general asociado de método universal al sistema operativo UNIX.Ventajas: poderoso, flexible, operacional, se utiliza en programas preferenciales, puede ser escrito para un tipo de computadoras.

Pseudocódigo: es un lenguaje de especificaciones de algoritmos. Es una herramienta de programación en la que las instrucciones se escriben en palabras similares al ingles o español, que faciliten tanto la escritura como la lectura de programas.
Diagrama (NS): es un diagrama de flujo en el que se omiten las flechas de unión y las cajas son continuas. Las acciones sucesivas se escriben en cajas sucesivas y como en los diagramas de flujo, se pueden escribir diferentes acciones en cajas.
Variable: es el valor cambiante.
Constante: es el valor fijo.

martes, 10 de febrero de 2009

DIAGRAMA DE 4 NUMEROS


DIAGRAMA DE 3 NUMEROS

Dado 3 numros,determinar si la suma de cualquier pareja de ellos es igual al tercer numero. si se cumple esta condicion, escribir "iguales" y en caso contrario, escribir"distintas".

DIAGRAMA DE DOS CONDICIONES

Realizar diagrama que calcule el valor de x1 y x2 basado en una ecuacion cuadratica de 2do. grado, si la raiz es negativa mandar mensaje que no se puede "delta es negativo y no es posible calcular raiz cuadratica" y si la raiz es cero imprimir "x1 es igual a x2" ya que seria el mismo valor.

lunes, 9 de febrero de 2009

RESOLUCION AL ALGORITMO EN CLASE

SI LA RAIZ EN X1 Y X2 ES NEGATIVA



ESCRITORIO


AHI ESTA EL DIBUJO DEL ESCRITORIO......

domingo, 8 de febrero de 2009

ALGORITMO DE X1 Y X2 (TAREA)

Realizar algoritmo que calcule el valor de x1 y x2 basado en una ecuacion cuadratica de 2do. grado y la formula general.
1.- Inicio
2.- Leer a, b, c.
3.- Calcular:x1= [-b+√[a^2-(4*a*c)]]/2*ax2= [-b-√[a^2-(4*a*c)]]/2*a
4.- Imprimir x1, x2
5.- Si x1 o x2 es negativo imprimir "no es posible calcular delta por que es negativo"
6.- Si x1 o x2 es positivo pasar a paso 7
7.- Fin
√ = raiz

viernes, 6 de febrero de 2009

Algoritmo en clase

Realizar un algoritmo que la edad de una persona y determine si puede votar o no puede votar.
  1. Inicio
  2. Leer meses (m)
  3. Si m>216 hacer paso 4 si no paso 5
  4. Imprimir "si puede votar";saltar paso 6
  5. Imprimir "no puede votar"
  6. Fin

DIAGRAMA DE FLUJO

jueves, 5 de febrero de 2009

TAREA

Realizar un algoritmo que calcule el valor x1 y x2 basado en una ecuacion cuadratica y la formula general.
  • ax² + bx + c = 0
  • X1 = -b +√ b² - 4ac / 2ª
  • X2 = -b -√ b² - 4ac / 2ª

lunes, 2 de febrero de 2009

Unidad II (resumen)

Un metodo general para la resolucion de un problema con computadorass tiene las siguientes fases:
analisis del programa
diseño del algoritmo
cadificacion
compilacion y ejecucion
verificacion
documentacion y mantenimiento

El sistema mas idoneo para resolver un problema es descomponerlo en modulos mas sencillos y luego, mediante diseños descendentes y refinamiento sucesivo.

Llegar a modulos facilmente codificables. Estos modulos se deben codificar con las estructuras de control de porgramacion estructurada.

secuenciales: las instrucciones se ejecutan secesivamente una despues de otra.
repetitivas: una serie de instrucciones se repiten una y otra vez hasta que se cumple una cierta condicion.
selectivas: permite elegir dos alternativas (dos conjuntos de instrucciones) dependiendo de una condicion determinada.

Unidad I (resumen)

Una computadora es una maquina para procesar información y obtener en función de unos datos de entrada.
Hardware: parte física de una maquina (dispositivos electrónicos)
Software: parte lógica de una computadora (programas)

Las computadoras se componen de:
Dispositivos de entrada/salida (E/S)
Unidad central de proceso (unidad de control y unidad lógica y aritmética)
Memoria central
Dispositivo de almacenamiento masivo de información (memoria auxiliar o externa)

El software de sistema comprende, entre otros, el sistema operativo Windows Linux, en computadoras personales y lenguajes de programación. Los lenguajes de programación de alto nivel están diseñados para hacer más fáciles la escritura de programas que los lenguajes de bajo nivel. Existen numerosos lenguajes de programación cada uno e los cuales tiene sus propias características y funcionamientos y normalmente son mas fáciles de trasportar a maquinas diferentes que los escritos en lenguajes de bajo nivel.Los programas escritos en lenguajes de alto nivel deben ser traducidos por un compilados antes de que se pueda ejecutar en una maquina especifica. En la mayoría de los lenguajes de programación se requiere un compilador para cada maquina en la que se desea ejecutar a programas escritos en un lenguaje especifico.

Los lenguajes de programación se clasifican en:
Alto nivel: pascal, fortran, visual Basic, c, ada, modula-2, c++, java, delphi, c, etc.
Bajo nivel: ensambladorMaquina: código maquina.
Diseño de web: smgl, html, xml, php…

Los programas traductores de lenguaje son:
Compiladores
Interpretes

C es un lenguaje de programación que contiene excelentes características como lenguaje para aprendizaje de programación y lenguaje profesional de propósito general; básicamente es un entorno de programación con editor y compilador incorporado.

jueves, 29 de enero de 2009

TAREA DE ALGORITMOS 2.1 y 2.2

2.1 Diseñar una solución para resolver cada uno de los siguientes problemas y tratar de refinar sus soluciones mediante algoritmos adecuados:

A) Realizar una llamada telefónica desde un teléfono público:

  • Inicio
  • ver donde esta el teléfono
  • ir hacia el teléfono
  • Tomar el teléfono
  • Insertarle monedas o en su caso tarjeta
  • Macar el numero deseado
  • Hablar por teléfono
  • Terminar de hablar
  • Colgar el teléfono
  • Soltar telefono
  • Fin

B) Cocinar una tortilla:

  • Inicio
  • Tomar los cerillos o encendedor
  • Prender el cerrillo o encendedor
  • Prender la estufa
  • Poner el comal sobre la estufa
  • Calentar una tortilla sobre el comal
  • Volteat tortilla
  • Sacar la tortilla
  • Fin

C) Arreglar un pinchazo de una bicicleta:

  • Inicio
  • Tomar una llave
  • Voltear la bicicleta
  • Quitar las tuercas o remaches
  • Quitar llanta pinchada
  • Parcharla
  • Poner llanta nueva
  • Volver a colocar los remaches o tuercas
  • Voltear la bicicleta
  • Fin

D) Freír un huevo:

  • Inicio
  • Tomar los cerillos o encendedor
  • Prender cerillo o encendedor
  • Prender la estufa
  • Poner el sartén sobre la estufa
  • Agregarle aceite de cocina al sarten
  • Tomar el huevo
  • Quebrar el huevo dentro del sartén
  • Esperar a que se frie el huevo
  • Sacarlo
  • Fin

2.2 Escribir un algoritmo para:

(A)Sumar dos números enteros:

  • Inicio
  • Leer n1,n2
  • Imprime n1+n2
  • Fin

(B)Restar dos números enteros:

  • Inicio
  • Leer n
  • Calcular n1 – n2
  • Imprime n
  • Fin

(C)Multiplicar dos números enteros:

  • Inicio
  • Leer n
  • Calcular n1 * n2
  • Imprime n
  • Fin

Dividir dos números enteros:

  • Inicio
  • Leer n
  • Calcular n1 / n2
  • Imprime n
  • Fin

ALGORITMOS

Algoritmo del area de un circulo:


  • Inicio

  • Leer radio

  • Calcular area= 3.141592653589*r2

  • Imprimir area

  • Fin

Algoritmo de un salrio:

  • Inicio
  • Leer Horas, Tarifa, tasa
  • Calcular PagaBruta = Horas * Tarifa
  • Calcular Impuestos = PagaBruta * Tasa
  • Calcular PagaNeta = PagaBruta – Impuestos
  • Imprimir PagaBruta, Impuestos, PagNeta
  • Fin

miércoles, 28 de enero de 2009

PROGRAMACION MODULAR

La progrmacion modular es uno de los metodos del diseño mas flexible y potente para mejorar la productividad de un programa. En progrmacion modular el progrma se divide en modulos (partes independientes), cada uno de estos modulos se analiza, codifica y pone a punto por separado. Cada programa contiene un modulo denominado programa principal que controla todo lo que sucede; se transfiere el contro a submodulos (posteriormente se denominaran subprogramas), de modo que ellos puedan ejecutar sus funciones; sin embargo, cada submodulo devuelve el contro la modulo principal cuando se halla completado su tarea. Si la tarea asignada a cada submodulo devuelve el control al modulo principal cuando se halla completado su tarea. Si la tarea asignada a cada submodulo es demasiado compleja, este debera romperse en otros modulos mas pequeños. El proceso sucesivo de subdivision de modulos continua hasta que cada modulo tenga

viernes, 23 de enero de 2009

DISEÑO DEL ALGORITMO

En la etapa del analisis del proceso de programacion se determina que hace el programa . En la etapa del diseño se determina como hace el programa la tarea solicitada. Los metodos mas eficacez para el proceso del diseño se basa en el conocido divide y venceras.

Separar en partes del problema mas pequeñas y asi resolver mas rapido y facil el problema.Este metodo se conoce como METODO DESCENDENTE (TOP-DOWN) o MODULAR

HERRAMIENTAS DE PROGRAMACION
Diagrma de flujo: es una representacion grafica de un algoritmo.
Los simbolos de diagrama de flujo son:
-Terminal.- Marcar el inicio y el fin del algoritmo
-Proceso.- Involucra cualquier proceso,
calculo o computo. Ejemplo:
"calcula a=b*c"
-Entrada.- Introduce datos al proceso o solucion
-Salida.- Envia la informacion al dispositivo
de salida estandar.Normalmente
el monitor.
-Decision.- Cambia el flujo del algoritmo de
acuerdo a una evaluacion.
Pseudocodigo: Es una herramienta de programcionen la que las instrucciones se escriben en palabras similares al ingles o español, que facilitan tanto la escritura como la lectura de programas.
Calcular la paga neta de un trabajador conociendo el numero de horas trabajadas, la tarifa horaria y la tasa de impuestos.
Algoritmo:
  1. Leer horas, tarifas, tasa
  2. Calcular pagabruta
  3. Calcular impuestos= pagabruta * tasa
  4. Calcular paganeta= pagabruta-impuestos
  5. Visualizar pagabruta, impuestos, paganeta

TAREA

Realizar un algoritmo que calcule el area de un rectangulo dado la base y la altura y de acuerdo a la formula A=b*a

  • Inicio
  • Programa para el calculo del area
  • Ingreso de datos
  • Leer la base
  • Leer la altura
  • Multiplicar la base por altura
  • Escribir el area
  • Fin

Calcular la paga neta de un trabajador conociendo en número de horas trabajadas, la tarifa horaria y la tasa de impuestos.

  • Inicio
  • Leer horas, tarifa, tasa
  • Calcular pagabruta = horas * tarifa
  • Calcular impuestos = pagabruta * tasa
  • Calcular paga neta = paga bruta – impuestos
  • Visualizar paga bruta, impuestos, paga neta
  • Fin

miércoles, 21 de enero de 2009

DIAGRAMA NASSI-SCHNEIDERMAN

El diagrama Nassi-Schneiderman es una técnica para la especificación de algoritmos que combina la descripción textual del pseudocódigo con la representación gráfica del diagrama de flujo.
FUENTE: (www.itescam.edu.mx).

Cuenta con un conjunto limitado de símbolos para representar los pasos del algoritmo, por ello se apoya en expresiones del lenguaje natural; sin embargo, dado que el lenguaje natural es muy extenso y se presta para la ambigüedad, solo se utiliza un conjunto de palabras, a las que se denomina palabras reservadas. Las palabras reservadas más utilizadas son:

  • Inicio Fin Leer Escribir
  • Mientras Repita Hasta Para
  • Incrementar Decrementar Hacer Función
  • Entero Real Caracter Cadena
  • Lógico Retornar

FUENTE: (www.monografias.com).

SIMBOLOS.- Los diagramas NS tienen tres símbolos principales : el primero es un
cuadro que sirve para representar cualquier proceso en el programa ; el
segundo símbolo es una decisión ; y el tercero es un cuadro dentro de
otro cuadro que se utiliza para indicar que se lleva a cabo una interación
Las acciones sucesivas se pueden escribir en cajas sucesivas y como en los diagramas de flujo, se pueden escribir diferentes acciones en una caja. Un algoritmo se represente en la sig. forma:
Inicio
Accion1
Accion2
. . .
Fin
Una estructura condicional en N-S se representa de la siguiente manera :
Ventajas:

  • Adopta la filosofía de la programación estructurada, que utiliza un
    enfoque descendente.
  • Utiliza un número limitado de símbolos de tal forma
    que el diagrama de flujo ocupa menos espacio.
  • Puede leerse con cierta
    finalidad.

Desventajas.

  • Deben estar completos y ser muy claros, con el fin de que se
    entiendan.
    Ejemplo: Se desea calcular el salario neto semanal de un trabajador en función del número de horas trabajadas y la tasa de impuestos.

FUENTE: (html.rincondelvago.com).

METODOLOGIA DE LA PROGRAMACION Y DESARROLLO DE SOFTWARTE

Los pasos para la resolucion de un problema:
  1. definicion o analisis del problema.
  2. diseño del algoritmo.
  3. transformacion del algoritmo en un programa.
  4. ejecucion y validacion del programa.

Fases en la resolucion de problemas:

  • analisis del problema
  • diseño del algoritmo
  • codificacion
  • compilacion y ejecucion
  • verificacion
  • depuracion

ALGORITMO.- Es un metodo para resolver un problema mediante una serie de pasos precisos, definidos y finitos.

Caracterisiticas:

preciso.- si se sigue dos veces, obteniendo el msmo resultado cada vez.

definido.- indica el orden de realizacion en cada paso.

finito.- tiene fin; un numero determinado de pasos.

Un algoritmo debe producir un resultaod en un tiempo finito. Los metodos que se utilizan algoritmos se denominan "metodos algoritmicos", en oposicion a los metodos que implican algun juicio o interpretacion que se denominan "metodos heuristicos".

heurística.- es la capacidad de un sistema para realizar de forma inmediata innovaciones positivas para sus fines.

lunes, 19 de enero de 2009

Conceptos Basicos del Lenguaje C

CONCEPTO DE LENGUAJE DE PROGRAMACION
Los lenguajes de programacion se utilizan para escribir programas. Los programas de la computadora modernas constan de secuencias de instrucciones que se codifican como secuencias de digitos numericos, que podran entender dichas computadoras. El sistema de codificacion se conoce como lenguaje maquina que es el lenguaje nativo de una computadora.
CLASIFICACION DE LOS LENGUAJES DE LA PROGRAMACION
Las instrucciones basicas y comunes en casi todos los lenguajes de programacion son:
  • Instrucciones de entrada/salida. Instrucciones de transferencia de informacion entre dispositivos perifericos y la memoria central, tales como "1eer de..." o bien "escribir en...".
  • Instrucciones de calculo. Instrucciones para que la computadora pueda realixar operaciones aritmeticas.
  • Instrucciones de control. Instrucciones que modifican la secuencia de ejecucion del program

Los principales tipos de lenguajes de programacion son:

  • Lenguajes maquina
  • Lenguajes de bajo nivel (ensambladores)
  • Lneguajes de alto nivel

En la decada de los 40 cuando nacian las primeras computadoras digitales el lenguaje que se utilizaba para programar era el lenguaje maquina que traducia directamente el codigo maquina. los investigadores de la epoca simplificaron el proceso de programacion desarrollando sistemas de notacion en los cuales las instrucciones se representaban en formatos nemonicos (nemotecnicos) en vez de en formatos numericos que eran dificiles de recordar.

Para convertir los programas escritos en codigos nemotecnico a lenguaje maquina, se desarrollaron programas ensambladores (assemblers). Es decir, los ensambladores son programas que traducen otors programas escriots en codigo nemotecnico en instrucciones numericas en lenguaje maquina que son compatibles y legibles por la maquina. A estos lenguajes se les denomina de segunda generacion, reservando el nombre de primera generacion para los lenguajes de maquina.

En la decada de los 50 y 60 comensaron a desarrollarse lenguajes de programacion de tercera generacion que diferian de las generaciones anteriores, eran de alto nivle e independientes de las maquina. Los ejemplos mas conocidos son FORTRAN (FORmula TRANslator) que fue desarrollado para aplicaciones cientificas y de ingenieria, y COBOL (COnnon Business-Oriented Language). Con el paso de los años apareciereon nuevos lenguajes tales como Pascal, BASIC, C, C++, Ada, Java, C, HTML, XML....

PARADIGMAS DE LA PROGRAMACION

Un paradigma de programacion representafundamentalmente enfoques diferentes para la construccion de soluciones a problemas y por consiguiente afectan al proceso completo de desarrollo de software. Los paradigmas de programacion clasicos son: procedimental (o imperativo), funcional, declarativo y orientado a objetos.

HISTORIA DEL LENGUAJE C

C es una evolucion de los lenguajes BCPL -desarrollado por Martin Richards

viernes, 16 de enero de 2009

bienvenida!!!!!!! xD

16-ene-09

ke paso!!!!! este es mi primer apunte en el blog de apuntes para la utilizacion de apuntes...