lunes, 20 de abril de 2009
viernes, 17 de abril de 2009
examensito
jueves, 16 de abril de 2009
Ejercisio que vale por 2 y tarea
martes, 14 de abril de 2009
Capitulo 5 (resumen)
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
operadores aritmeticos Sirven para realizar operaciones aritméticas básicas.
Ejemplos: + suma (x+y)
- resta (b-c)
% división entera: resto (b % 5)
Ejemplos: Negociación (!) ! (x >= y)
Y lógica (&&) m <> j
O lógica ll m = 5 l l n ! = 10
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--.
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
char c;
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.
jueves, 12 de marzo de 2009
miércoles, 11 de marzo de 2009
3.4
martes, 10 de marzo de 2009
lunes, 9 de marzo de 2009
viernes, 6 de marzo de 2009
martes, 3 de marzo de 2009
tarea!!!!!
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
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
main()
{
printf("hola");
printf("soy mario");
printf("estudio programacion");
return 0;
}
domingo, 22 de febrero de 2009
TAREA
Directivas de preprocesador;
Declaraciones globales;
La funcion main ( ); int main ( )
Funciones definidas por el usuario;
Comentarios del programa
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.
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.
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).
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.
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 ).
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.
#include
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.
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.
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.
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.
miércoles, 11 de febrero de 2009
GUIA DEL EXAMEN
ELEMENTOS DEL DIAGRAMA DE FLUJO (SIMBOLOS)
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.
martes, 10 de febrero de 2009
DIAGRAMA DE 3 NUMEROS
DIAGRAMA DE DOS CONDICIONES
lunes, 9 de febrero de 2009
domingo, 8 de febrero de 2009
ALGORITMO DE X1 Y X2 (TAREA)
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
viernes, 6 de febrero de 2009
Algoritmo en clase
- Inicio
- Leer meses (m)
- Si m>216 hacer paso 4 si no paso 5
- Imprimir "si puede votar";saltar paso 6
- Imprimir "no puede votar"
- Fin
DIAGRAMA DE FLUJO
jueves, 5 de febrero de 2009
TAREA
- ax² + bx + c = 0
- X1 = -b +√ b² - 4ac / 2ª
- X2 = -b -√ b² - 4ac / 2ª
lunes, 2 de febrero de 2009
Unidad II (resumen)
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)
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
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
- 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
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
- Leer horas, tarifas, tasa
- Calcular pagabruta
- Calcular impuestos= pagabruta * tasa
- Calcular paganeta= pagabruta-impuestos
- 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
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
- definicion o analisis del problema.
- diseño del algoritmo.
- transformacion del algoritmo en un programa.
- 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
- 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
ke paso!!!!! este es mi primer apunte en el blog de apuntes para la utilizacion de apuntes...