lunes, 27 de abril de 2009

respuesta del cuestionario

1.-defina los siguientes conceptos y proporcione al menos tres ejemplos

operadores aritmeticos
sirven para realizar operaciones aritmeticas basicas. los operadores aritmeticos C siguen las reglas algebraicas tipicas de jerarquia de prioridad.
estas reglas especifican la precedencia de las operaciones aritmeticas.
+ suma suma ejemplo x+y
- reta resta b-c
* producto producto x*y

operadores logicos
estos operadores se utilizan para devolver un valor verdadero (cualquier valor entero distinto de cero) o un valor falso
(0). los operadores logicos se denominan tambien operadores booleanos, en honor de george boole,
creador de la algebra boole.

operador Operación logica ejemplo
negacion No logica ¡(x>=y)
Y logica (&&) Operando_1&& operando_2 M < n && i >j
O logica ll Operando_1ll operando_2 M = 5 ll n ¡=10


operadores relacionales
C no tiene tipos de datos logicos o boléanos para representar los valores verdaderos (true) y falso (false). En su lugar se utiliza el tipo int para este proposito, con el valor entero 0 que representa al falso y distinto a cero que represnta a verdadero.

operador significado ejemplo
== 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 mayor.

Si dos operadores se aplican al mismo operando, el operador con mayor prioridad se aplica primero.
Todos los operadores del mismo grupo tiene igual de prioridad y asociatividad.
La asociatividad izquierda derecha significa aplicar el operador mas a la izquierda primero, y en la asociatividad derecha-izquierda se aplica primero el operador las a la derecha.
Los paréntesis tienen maxima prioridad.




3.-proporcione un ejemplo de cada tipo de operador de asignacion que existe y describa su funcion
Símbolo Uso descripcion
= A=b Asigna el valor de b a a
*= A*=b Multiplica a por b y asigna el resultado a la variable a
/= a/=b Divide a entre b b y asigna el resultado a la variable a
%= A%=b Fija a al resto de a/b.
+= A+=b Suma b y a b y asigna a la variable a
-= a-=b Reta b de a b y asigna el resultado a la variable a


4.-explique que son los operadores de incremento y decremento, porporcione 2 ejemplos de cada uno y su funcion
El operador incremento ++ y decremento -- , suman o resta 1 a su argumento respectivamente, cada vez que se aplican a una variable.
Ejemplos:
N=8
M = ++n
N =9

Int a = 1,b; /* b vale 1 y a vale 2*/
B = a++;



5.-liste los operadores relacionales, proporcione un ejemplo y su funcion
operador significado ejemplo
== Igual a A==b
¡= No igual a A ¡= b
> Mayor que A > b
< Menor que a>b
>= Mayor o igual que A>=b
<= Menor o igual que a<=b


6.-contruya la tabla de verdad de las operaciones and y or

A&B ==C AIB == C
0&0==0
0&1==0
1&0==0
1&1==1 0I0 == 0
0I1 == 1
1I0 == 1
1I1 == 1











7.-que es un operador de direccion. cuales existen y explique su funcionamiento

Permite manipular las direcciones de las variables y registros en general
operador accion
* Lee el valor apuntado por la expresión. El operando se corresponde con unpuntero y el resultado es del tipo apuntando-
& Devuelve un puntero al objeto utilizando como operando, que debe ser un lvalue (variable dotada de una direccion de memoria) en resultado es un puntero de tipo identico al del operando
. Permite acceder a un miembro de un dato agregado (union, estructura)
-> accede a un miembro de un dato agregado (union, estructura) apuntado por el operador de la izquierda


8.-proporcione tres ejemplos de operadores condionales y funcion

Ventas > 150000 ? comision =100 : comision =0;
Si ventas es mayor que 150000 ejecuta comision =100
Si ventas no es mayor que 150000 se ejecuta comision =0

n>= 0? 1 : -1 1 si n es positivo, -1 si es negativo

m>= n ? m : n devuelve el mayor valor de m y n


9.-proporcione dos ejemplos que utilicen el operador "," explique su funcion

Permite combinar dos o mas expresiones separadas por comas en una solo linea. Se evalua primero la expresión de la izquierda y luego las restantes expresiones de izquierda a derecha.la expresión mas a la derecha determina el resultados global.
Ejem:
i++, j++; equivale a i++;j++
i++, j++, k++ equivale a i++; j++; k++

10.-explique la funcion del operaodor [] y proporcione 2 ejemplos

Sirve para dimensionar los arrays y designar un elemento de un array
Ejem:
Double v[20] define un array de 20 elementos
Printf (“v[2] = %e”, v[2]); describe el elemento 2 de v





11.-a que se refiere la convercion de tipos

Con frecuencia se necesita convertir un valor de un tipo a otro sin cambiar el valor que representa. Las conversiones de tipos pueden ser implícitas (ejecutables automaticamente) o explicitas (solicitadas específicamente por el programador)

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.-enliste los operadores con mayor grado de prioridad (a menos 4 niveles)
prioridad operadores asociatividad
1 . -> [] () I-D
2 ++ -- ~!-+&* sizeof (tipo) D-I
3 - / % I-D
4 + - I-D

lunes, 30 de marzo de 2009

30 d marzo

1.-defina los siguientes conceptos y proporcione al menos tres ejemplos
operadores aretmeticos
operadores logicos
operadores relacionales
2.-que son las reglas de prioridad y asociatividad
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, porporcione 2 ejemplos de cada uno y su funcion
5.-liste los operadores relacionales, proporcione un ejemplo y su funcion
6.-contruya la tabla de verdad de las operaciones and y or
7.-que es un operador de direccion. cuales existen y explique su funcionamiento
8.-proporcione tres ejemplos de operadores condionales y funcion
9.-proporcione dos ejemplos que utilicen el operador "," explique su funcion
10.-explique la funcion del operaodor [] y proporcione 2 ejemplos
11.-a que se refiere la convercion de tipos
12.-enliste los operadores con mayor grado de prioridad (a menos 4 niveles)

jueves, 19 de marzo de 2009

programa unidad 4

#include
int main ()
{
int i;
i=5;
printf("el valor de i es igual %d \n" , i);

i = i * 10;
printf ("ahora el valor de i es %d\n", i);



return 0;
}

resumen de unidad 3

Estructura general de un programa en c

Un programa en c se compone de una o mas funciones. Unas de las funciones debe ser obligatoriamente main. Una funcion en c es un grupo de instrucciones que realiza una o mas acciones. Asi mismo, un programa contendra una serie de directivas #include que permitiran incluir en el mismo archivo de cabecera que a su vez constaran de funciones y datos predefinidos en ellos.
#include archivo de cabecera stdio.h
Int main () cabecera de funcion
{ nombre de la funcion
… sentencias
}

De un modo mas explicito, un programa se puede incluir:
Directivas de preprocesador;
Declaraciones globales;
La funcion main (); int main
Funciones definidas por el usuario;
Comentarios del programa

Directivas de preprocesador;
El preprocesador en un programa c se puedeconsidera como un editor de texto inteligente que consta de directivas (intucciones al compilador antes de que se compile el programa principal). Las dos directivas mas usuales son #include #define.
La directiva #include indica al compilador que lea el archivo funte que viene acontinuacion de ella y su contenido lo inserte en la posición donde se encuentra dicha directiva.
El archivo de cabecera mas frecuente es stdio.h. esdte archivo proporciona al compilador c finformacion necesaria sobre las funciones de biblioteca que realizan operaciones de entrada y salida.
#include .
#define. La directiva # define indica al preprocesador que defina un item de datos u operación para el programa c.
Por ejemplo: la directiva #define tam_linea 65
Sustituira tam_linea por el valor 65 cada vez que aparezca en el programa.


Declaraciones globales
Las declaraciones globales indican al compilador que als 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;.


La funcion main (); int main
Cada programa c tiene una funcion main () que es el punto de entrada al programa. Su estructura es:
main()
{ bloque de sentencia

}
Las sentencias incluidas entre las llaves {…} se denominan bloque.
Un programa debe 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 colección de funciones.

Funciones definidas por el usuario;
Las funciones definidas por el usuario se invocan por su nombre y los parámetros opcionales que puedan tener. Después de que la funcion es llamada, el cadigo asociado con la funcion se ejecuta y a continuacion , se retorna con la la funcion llamadora.
Todas las funciones tiene nombre y reciven uan lista de valores. Se pude asignar cualquier valor a su funcion, pero normalmente se procura que dicho nombre describa el propósito de la funcion. Las fiunciones requieren una declaracion o prototipo en el programa:
Void trazacurva ();


Comentarios del programa
Un comentari es cualquier información que se añade a su archivo fuente para proporcionar documentación de cualquier tipo, el compilador ignora los comentarios, no realiza ninguna tarea concrata. El uso de comentario es totalmente opcional, aunque dicho uso es muy recomendable.
Todo el texto situado entre las dos secuencias es un comentario ignorado por el compilados.

/* prueba1.c –primer programa c */

3.2 creacion de un programa
Para crear un programa en general los pasos serian:
1.-Utilizar un editor de texto para escribir el programa y grabarlo en un archivo.
2.- compilar el codigo fuente. Se traduce el codigo fuente en un codigo objeto (extensión .obj) (lrnjuage maquina entendible para la computadora).
3. – enlazar el codigo objeto con las bibliotecas correspondientes. Una biblioteca c contiene codigo objeto de una colección de rutinas o funciones que realizan tareas, como visualizar informaciones en la pantalla o calcular la raiz cuadrada de un numero.

Para crear un programa se utilizan las siguientes etapas:

1. definir su programa.
2. definir directivas del preprocesador.
3. definir 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.




EL PROCESO DE EJECUCION DE UN PROGRAMA EN C

La primera operación en el proceso de ejecución de un programa es introducir las sentencias (instrucciones) del programa con un editor de texto.

A continuación se debe guardar el texto en disco para su conservación y uso posterior.
La figura 3.3 muestra el metodo de edicion de un programa y la creación del programa en un disco, en un archivo que se denomina archivo de texto (archivo fuente).

Normalmente un programa consta de diferentes unidades o partes de programa que se han cumplido independientemente.

Un programa especial llamado enlazador toma el archivo objeto y las partes necesarias de la biblioteca del sistema y construye archivo ejecutable .los archivos ejecutables tienen un nombre con la extencion .exe (en el ejemplo ,area .exe).

El proceso de ejecución de un programa no suele funcionar 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.
La figura 3.6 muestra el proceso completo de puesta o punto de un programa.

DEPURACION DE UN PROGAMA 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.
Desde el punto de vista conceptual existen tres tipos de errores: sintaxis, logicos y de regresion.

ERRORES DE SINTAXIS
Los errores de sintaxis son aquellos que se producen cuando el programa viola la sintaxis, es decir, las reglas de gramatica del lenguaje. Errores de sintaxis tipicos son: escritura incorrecta de palabras reservadas, omision de signos de puntuación (comillas, punto y coma…) los errores de sintaxis son los mas faciles de fijar, ya que ellos son detectados y aislados por el compilador.

ERRORE LOGICOS

Un segundo tipo de erros importante es el error logico, ya que tal error representa errores del programador en el diseño del algoritmo y posterior programa. Los errores logicos son mas difíciles de encontrar y aislar ya que no suelen ser detectados por el compilador.

ERRORES DE REGRESION

Los errores de regresión son aquellos que se crean accidentalmente cuando se intentan corregir un error logico.

MENSAJES DE ERROR

Los compiladores emiten un mensaje de error o advertencia durante las faces de compilación, de enlace o de ejecución de un programa. En general, se agrupan en tres los bloques;
Errores fatales: son raros. Algunos de ellos indican un error interno del compilador.
Errores de sintaxis: son errores tipicos de sintaxis.
Advertencias (warning) . no impiden la compilación. Indican condiciones que son sospechosas.

ERRORES EN TIEMPO DE EJECUCION

exisrten dos tipos de errores en tiempo de ejecucion: aquellos que son detectados por el sistema en tiempo de ejecución de C y aquellos que permiten la terminacion del programa pero producen resultados incorrectos.

PRUEBAS

Para determinar si un programa contiene un error logico, se debe ejecutar utilizando datos de muestra y comprobar la salida verificando su exactitud. Esta prueba (testing) se debe hacer varias veces utilizando varias entradas, preparadas –en el caso ideal-, por personas diferentes al programador, que puedan indicar supocisiones no evidentes en la eleccion de los datos de prueba. Si cualquier combinación de entradas produce salida incorrecta, entonces el programa contiene error logico.

LOS ELEMENTOS DE UN PROGRAMA EN C

Tokens (elementos lexicos de los programas)
Existen cinco clases de tokens: identificadores, palabras reservadas, literales, operadores y otros separadores.

Identificadores: un identificasdor es una secuencia de caracteres, letras, digitos y subrayados (_). El primer carácter debe ser una letra (algun compilador admite carácter de subrayado). Las letras mayusculas y minusculas son diferentes.

Palabras reservadas: una palabra reservada (keyword o reserved word), tal como void es una caracteristica del lenguaje c asociada con algun significado especial.
Los siguientes identificadores estan reservados para utilizarlos como palabras reservadas, y no se deben emplear para otros propositos.


Asm
Auto
Break
Case
Char
Const
Enum
Extern
Float
For
Goto
If
Signed
Sizeof
Static
Struct
Switch
Typedef
Continue
Default
Do
Double
Else
Int
Long
Register
Return
Short
Union
Unsigned
Void
Volatile
while




COMENTARIOS
los comentarios se encierran entre /* y */ y pueden extenderse a lo largo de varias lineas

SIGNOS DE PUNTUACIÓN Y SEPARADORES

! % ^&*()־+-={}~[]/;':<>?¸•\"

Archivos de cabecera

Un archivo de cabecera es un archivo especial que contiene declaraciones de elementos y funciones de la biblioteca, ejemplos:
#include
#include

Tipos de datos en c

Los tres tipos de datos en c son:
Enteros
Numeros de coma flotante (reales)
Caractere

Enteros:
Tipo c Rango de valores Uso recomendado
Int -32.768...+32.767 Aritmetica de enteros, bucles for, conteo.
Unsigned int 0…65.535 Conteo, bucles for, indices
Short int -128 .. +127 Aritmetica de enteros, bules for, conteo

Tipos de datos flotantes
Tipo Rango de valores Precision
Flota 3.4 * 10 -38 … 3.4 * 10 38 7 digitos
Double 1.7 * 10 -308 … 1.7 * 10 308 15 digitos
Long double 3.4 * 10 -4932 ….1.1 * 10 4932 19 digitos

Caracteres
Un carácter es cualquier elemento de un conjunto de caractere predefinidos o alfabeto. Se puede definir una variable de caracteres escribiendo:
Char dato_car;
Char letra_´a´
Char respuesta = ´s´

Internamente, los caracteres se almacenan como numeros. La letra A se almacena, por ejemplo, como el numero 65, la letra B es 66, la letra C es 67 etc. El tipo char representa valores en el rango -128 a +127.

EL TIPO DE DATO LOGICO

Los compiladores de c que siguen la norma ANSI no incorporan el tipo de dato logico cuyos valores son verdadero y falso . El lenguaje c simula este tipo de dato tan importante en la estructura de control (if, while…) para ello utiliza el tipo de dato int. C interpreta todo valor distinto a 0 como verdadero y el valor 0 como falso.

3.9 constantes en c existen cuatro tipos de constantes:
Constantes literales
Constan5tes definidas
Constantes enumeradas
Constantes declaradas

jueves, 12 de marzo de 2009

pragama 3.1

pragrama 3.3

programa 3.6

en este programa se define una variable y se le da un escrito al tipo de dato char los cuales se imprimen

viernes, 6 de marzo de 2009

martes, 10 de febrero de 2009

guia de examen

concepto de algoritmo
computadora
compilador
interprete
dispositivos de almacenamiento
hardware
software
lenguaje maquina
lenguaje ensamblador
lenguaje de programacion
lenguaje c
elementos de diagrama de flujo
seudocodigo
variables y constantes
diagrama n-s

viernes, 6 de febrero de 2009

algoritmo hecho en clase

realizar un algoritmo que lea la edad en meses de una persona y determine si puede votar o no puede votar (imprime puede votar o no puede votar)

1.-inicio
2.-leer n
3.-calcular años=n*12
4.-si años<216 hacer paso 5 si no paso 7
5.-imprimir si puede votar
6.-saltar paso 7
7.-imprimir no puede votar
8.-fin

jueves, 5 de febrero de 2009

Métodos Formales de verificaciones de programas.

Aserciones7
Una parte importante de uan verificación formal es la documentación de un programa atraves de asertos o afirmaciones – sentencias logicas ciertas hacerca del programa que se declaran verdaderas-. Un aserto se escribe como un comentario y describe lo que se supone sea verdadero sobre las variables del programa en ese punto.

Precondiciones y poscondiciones
Las precondiciones y poscondiciones son afirmaciones sencillas sobre condiciones al principio y al final de los modulos.

Reglas para prueba de programas
Un medio util para probar que un programa p hace lo que realmente ha de hacer es proporcional aserciones que expresen las condiciones antes y después de que p sea ejecutado. En realidad las aserciones son como sentencias o declaraciones que pueden ser o bien verdaderas o bien falsas.

Invariantes de bucles
Una invariante de bucle es una condicion que es verdadera antes y después de la ejecución de un bucle. Las invariantes de bucle se utilizan para demostrar la conexión (exactitud) de algoritmos iterativos. Utilizando invariantes se pueden detectar errores antes de comenzar la codificacion y por esa razon reducir tiempo de depuración y prueba.

miércoles, 4 de febrero de 2009

Diagrama de Nassi-Schneiderman

El diagrama n-s de Nassi-Schneiderman -tambien conocido como diagrama de chapìn- es como un diagrama de flujo en el que se omiten las flechas de unión y las cajas son contiguas. Las acciones sucesivas se describen en cajas sucesivas y, como el los diagramas de flujo, se pueden escribir diferentes acciones en una caja.

Un algoritmo se representa con un rectángulo en el que cada banda es una acción a realizar:
Diagrama de flujo

Un diagrama de flujo es un diagrama que utiliza los símbolos (cajas) están demostrados en la tabla 2.1 y que tienen los pasos de algoritmos escritos en esas cajas unidas por flechas, denominadas líneas de flujo, que indican las secuencias en que se deben ejecutar.
Pseudocódigo

Pseudocodigos: se pueden definir como un lenguaje de especificaciones de algoritmos.

El pseudocodigo que resuelve el problema 2.1 es:

Previsiones de depreciciacion
Introducir coste
Vida útil
Valor final de rescate (recuperacion)
Imprimir cabeceras
Establecer el valor inicial del año
Calcular depreciación
Mientras valor año=< vida útil hacer
Calcular depreciación acumulada
Calcular valor actual
Imprimir una línea en la tabla
Incrementar el valor del año
Fin mientras

Las palabras reservadas básicas editan representadas en negritas
Representación Grafica de Algoritmos

Para presentar un algoritmo se debe utilizar algún método que permita independizar dicho algoritmo del lenguaje de programación elegido ello permitirá que un algoritmo pueda ser codificado indistintamente a cualquier lenguaje.

Los métodos usuales para presentar un algoritmo son:
1.- diagrama de flujo
2.- diagrama n-s (nasi-schneaiderman)
3.- lenguaje de especificación de algoritmo: pseudocodigo,
4.- lenguaje español, ingles….
5.- formulas.
Escritura de Algoritmos

En el algoritmo existen diferentes aspectos a considerar. Ciertas palabras reservadas se han escrito en negritas (mientras, si, no, etc.)Estas palabras describen las estructuras del control fundamentales y procesos de toma de decisión en el algoritmo estas incluyen los conceptos importantes de selección (expresadas por si-entonces-si_no, if-then-else) y de repetición (expresadas con mientras-hacer o a veces repetir-hasta e iterar-fin_iterar, en ingles, while-do y repeat-until) que se encuentran en casi todos los algoritmos, especialmente los de procesos de datos. La capacidad de decisión permite seleccionar alternativas de acciones a seguir o bien la repeticion una y ora vez de operaciones básicas.

Concepto y características del Algoritmo

ejemplo de algoritmo





Un algoritmo es un método para resolver un problema. Algoritmo proviene de mohammed al-khowarizmi la traducción al latín al apellido en la palabra algorizmus derivo posteriormente en algoritmo.
La resolución de un problema exige el diseño de un algoritmo que resuelva el problema propuesto.

Pasos para la resolución de un problema son:
1.- diseño del algoritmo, que describe la secuencia ordenada de pasos - sin ambigüedades- que conducen a la resolución de un problema dado (análisis del problema y desarrollo del algoritmo).
2.- expresar el algoritmo del lenguaje de programación adecuado. (Fase de codificación).
3.- ejecución y validación del programa por la computadora.
Características de los algoritmos

Las características fundamentales que deben cumplir todos los algoritmos son:
1.- un algoritmo debe ser preciso
2.- un algoritmo debe estar definido
3.- un algoritmo debe ser finito

Programación Estructurada

La programación estructurada significa escribir un programa deacuerdo a las siguientes reglas:

1.- el programa tiene un programa modular
2.- los módulos son diseñados de forma descendente
3.- cada modulo de codifica utilizando las tres estructuras de control básicas: secuencia, selección y repetición.

El termino programación estructurada aumenta considerablemente la productividad del programa reduciendo en elevado grado el tiempo requerido para escribir, verificar, depurar y mantener los programas.

La programación estructurada es una serie de técnicas que incorporan:
1.- recursos abstractos
2.- diseño descendente (top down)
3.- estructuras básicas

Programación Modular


Programación Modular

La programación modular es uno de los métodos de diseño más flexible y potente para mejorar la productividad de un programa. En programación modular el programa se divida en módulos (partes independientes), cada programa contiene un modulo denominado programa principal que controla todo lo que sucede; se transfiere el control a submodulos (posteriormente se denominaran subprogramas), el proceso sucesivo de subdivisión de módulos continúan hasta que cada modulo tenga solamente una tarea especifica que ejecutar esta tarea puede ser entrada, salida, manipulación de datos, control de otros módulos o alguna combinación de estos.
Documentación (solo para sistemas robustos)
La documentación de un problema consta de las descripciones de los pasos a dar en el proceso de resolución de dicho problema.
La documentación de un programa puede ser interna y externa.

La documentación interna es la contenida en líneas de comentarios.
La documentación externa incluye análisis, diagramas de flujo y/o pseudocodigos, manuales de usuario con instrucciones para ejecutar el programa y para interpretar los resultados.
Verificación y depuración de un programa

La verificación y compilación de un programa es el proceso de ejecución del programa con una amplia variedad de datos de entrada, llama datos de test o prueba, que determinaran si el programa tiene errores (bugs). La depuración es el proceso de encontrar los errores del programa y corregir o eliminar dichos errores.

1.- errores de compilación: se producen normalmente por un uso incorrecto de las reglas del lenguaje de programación y suelen ser errores de sintaxis.
2.- errores de ejecución: estos errores se producen por instrucciones que la computadora puede comprender pero no ejecutar.
3.- errores lógicos: se producen en la lógica del programa y a la fuente del error suele ser el diseño del algoritmo.

Compilación y ejecución de un programa

Una vez que el algoritmo se ha convertido en un programa fuente, es preciso introducirlo en memoria mediante el teclado y almacenarlo posteriormente en un disco. El programa fuente debe ser traducido al lenguaje maquina, si tras la compilación se presentan errores es preciso volver a editar el programa, corregir los errores y compilar de nuevo hasta que no se producen errores obteniéndose el programa objeto se debe instruir al sistema operativo para que realice la FACE de montaje o enlace (link), carga, del programa objeto con las bibliotecas del programa del compilador. El proceso de montaje produce un programa ejecutable.
Codificación de un programa

Codificación es la escritura en un lenguaje de programación de la representación del algoritmo desarrollada en etapas precedentes.
Para realizar la conversión de algoritmo en programa se debe sustituir las palabras reservadas en español por sus homónimos en ingles, y las operaciones/instrucciones indicadas en lenguaje natural expresarlas en el lenguaje de programación correspondiente.

Herramientas de programación

div align="left"Las dos herramientas mas utilizadas comúnmente para diseñar algoritmos son: diagrama de flujo y pseudocodigos.

Diagrama de flujo: es una representación grafica de un algoritmo, los símbolos utilizados se muestran en la figura 2.2

Pseudocodigos: se pueden definir como un lenguaje de especificaciones de algoritmos.

El pseudocodigo que resuelve el problema 2.1 es:

Previsiones de depreciciacion
Introducir coste
Vida útil
Valor final de rescate (recuperacion)
Imprimir cabeceras
Establecer el valor inicial del año
Calcular depreciación
Mientras valor año=<>

jueves, 29 de enero de 2009

jueves 29 de enero

algoritmo hecho en la clase

algoritmo del area de un circulo
realice un algoritmo que calcule el area de un circulo

inicio
leer radio
calcular area = 3.14*(radio*radio)
imprimir radio, area
fin

lunes, 26 de enero de 2009

terea de algoritmos

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

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

Calcular el area de un rectangulo dada base y altura y la formula es a=b*h
Algoritmo
Inicio
Leer base, altura
Calcular area = base * altura
Imprimir base , altura, area
Fin

viernes, 23 de enero de 2009

diseños del algoritmo

en la etapa del analissi del proceso de programacion se determina que hace el programa. en la etapa del adiseño se determina como hace el programa la tarea solisitada. los matodos mas eficases para el proceso de diseño se basa en el conocido divide y venceras; esto sigmifica que se deben separar los procesos para hacer sencillos los problemas complejos. este metodo se cono ce como metodos decendentes (top-down) o modular.

herramientas de programacion
diagrama de flujo
es una representacion grafica de un algoritmo

terminal: marca el inicio y el fin del diagrama
entrada: introduce datos al proceso o solucion (programa)
desicion: cambia el flujo del algoritmo de acuerdo a una evaluacion logica
proceso: involucra cualquier proceso, calculo o computo por ejemplo "calcula a=b*h"
salida: envia la informacion al dispositivo de salida estandar. normalmentew el monitor

algoritmo

jueves, 22 de enero de 2009

Gráficas Nassj-Shneiderman
Un enfoque más estructurado, pero un poco menos visual, para el diseño la documentaci6n es la gráfica Nassi-Shneiderman (N-S). La principal ventaja de la gráfica N-S es que adopta la filosofía de la programación estructurada. En segundo, usa una cantidad limitada de símbolos, por lo que el diagrama de flujo ocupa menos espacio y puede ser leído por alguien que no esté familiarizado con los símbolos usados en otros tipos de diagramas de flujo. La figura muestra los tres símbolos básicos que la Ingeniería de software usan en las gráficas N-S.
· El primer símbolo es un cuadro, que se usa para representar cualquier proceso en el programa.
· El segundo símbolo es un triángulo divisor de columnas, que representa una decisión (observe la similitud con el rombo en los diagramas de flujo tradicionales). La forma más básica de una decisión, cierto" o "falso", se muestra en esta figura, pero cualquier forma de decisión, aun las que incluyen varias condiciones alternativas, pueden ser mostradas usando este símbolo.
· El tercer símbolo es el de cuadro dentro de cuadro, usado para mostrar que se realiza una iteración.
· El cuadro dentro del cuadro también aparece como una identificación en la gráfica completa.
En la programación estructurada se usa un enfoque de arriba hacia bajo. Esto significa que el analista puede comenzar trazando primero los ciclos principales y luego hacer una sangría para completar posteriormente los ciclos interiores.En resumen, las gráficas N-S pueden ser una herramienta valiosa para el analista, y son sustentadas por algunas herramientas CASE, tal como el XperCASE.


funete: mx.geocities.com

miércoles, 21 de enero de 2009

miercoles 21 de enero

capitulo 2 de la programaicion y desarrollo de software

la resolucion de un problema con una computadora se hace escribiendo un programa, que exige los siguientes pasos;
1.-definicion y analis
2.-diseño de algoritymo
3.-transformacion del algoritmo-programa
4.-ejecucion y validacion

caracteristicas del algoritmico
presiso
definido
finito

fases en la resolucion de problemas
analisis del problema
diseño del algoritmo
codificacion
compilacion y ejecucion
verificacion
depuracion

viernes, 16 de enero de 2009

clase del dia 16 de enero

este dia es la creacion de mi blog y de todos los compas la clase se trato basicamente de esto y de como se va a estar manejando el blog, asi de que le tenemos que estar poniendo apuntes case a clase y que podemos entrar a los blog de nuestros compañeros para comparar los apuntes asi como ponerles notas y comentarios.

puntos importantes tratados:
1.- siempre cerrar el blog por el sistema en cerrar sesion y/o salir
2.- no copiar de los apuntes de mis compañeros
3.- si modifico mi plantilla primero ver vista previa

notas:
tarea para lunes 19
leer libro hasta la pagina 66