miércoles, 15 de abril de 2009

Capitulo 5 Resumen

ESTRUCTURA DE SELECCION: SENTENCIAS if Y switch

Resumen

Estructura de control:
Controlan el flujo de ejecución de un programa o función. Las estructuras permiten combinar instrucciones o sentencias individuales en una simple lógica con un punto de entrada y un punto de salida. Hay tres instrucciones o sentencias son: secuencia, selección (decisión) y repetición.

La sentencia if:
La función if funciona se 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 mas simple, acción es una sentencia simple y en los restantes formatos es una sentencia compuesta).

Sentencia if de dos alternativas: if-else

Este formato de la sentencia if-else tiene la siguiente sintaxis: if(expresión) “expresión lógica que determina la acción a ejecutar”, accion1(acción que se realiza si la expresión lógica es verdadera),else (accion2) “acción que se ejecuta si la expresión lógica es falsa”.

Sentencias if-else animadas
: Una sentencia if es animada cuando la sentencia de la rama verdadera o la rama falsa, es a su vez una sentencia if. Una sentencia if animada se puede utilizar para implementar decisiones con varias alternativas o multi-alternativas.

Sangria en las sentencias if animadas:

El formato multibifurcacion se compone de una serie de sentencias if animadas, en cada línea se puede escribir una sentencia if.

Comparación de sentencias if animadas y secuencias de sentencias if:

Los programadores tienen dos alternativas: 1) usar una secuencia de sentencias if; 2) una única sentencia if animada. La secuencia if no estan legible ni eficiente, al contrario que la secuencia if animada, la sentencia if animada se ejecuta mas rápidamente cuando x es positivo ya que la primera condición (x>0) es verdadera, lo que significa que la parte de la sentencia if a continuación del primer else se salta.

Sentencia de control switch:
La sentencia switch 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 tipo int o char, pero no de tipo flota ni double.

Capitulo 4

1.Defina los siguientes conceptos y proporciones al menos 3 ejemplos:

Operadores aritméticos: Sirven para realizar operaciones aritméticas básicas. Los operadores aritméticos C siguen las reglas algebraicas típicas de jerarquía o prioridad. Estas reglas especifican la precedencia de las operaciones aritméticas.
Suma + Ejemplo: x+y
Resta - ejemplo: b-c
Producto * ejemplo: x*y

Operadores lógicos: Estos operadores se utilizan con expresiones para devolver un valor verdadero (cualquier distinto de 0) o un valor falso (0). Los operadores lógicos se denominan también operadores booleanos.

Operador Operación lógica Ejemplo
Negación (!) No lógica !(x >= y)
Y lógica(&&) Operando_1 && operando_2 m <> j
O lógica Operando_1 || operando_2 m =5 || n != 10

Operadores relacionales: Se usan normalmente en sentencias de selección (if) o de iteración (while, for), que sirven para comprobar una condición. Utilizando operadores relacionales se realizan operaciones de igualdad, desigualdad diferencias relativas.

Ejemplos: x<5.75,>=5.0*a*c, numero==100, inicial != ‘5’
Comparar x=3.1, x<7.5, produce 0.
Comparar x=27, x==100, produce 0.

2. Que son la reglas de prioridad y asociatividad?

La prioridad do precedencia de operadores determina el orden de 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.
*Si dos operadores se aplican al mismo operando, e operador con mayor prioridad se aplica primero.
*Todos los operadores del mismo grupo tienen igual prioridad y asociatividad.
*La asociatividad izquierda-derecha significa aplicar el operador más a la izquierda primero, y en la asociatividad derecha-izquierda se aplica el operador más a la derecha.
*Los paréntesis tienen la máxima prioridad.

3. Proporcione un ejemplo de cada tipo de operador de asignación que existe y describa su función.

Símbolo Uso Descripción
= A=b Asigna el valor de b a a
*= A*=b Multiplica a por b y asigna el valor a la variable a
/= A/=b Divide a entre b y asigna el valor a la variable a
%= A%=b Fija a el resto de a/b
+= A+=b Suma b y a y lo asigna a la variable a
-= A-=b Resta b y a y lo asigna a la variable a.

4. Explique que son los operadores de incremento y decremento, proporcione 2 ejemplos de cada uno y su función.
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. Estos operadores tienen la propiedad de que pueden utilizarse como sufijo o prefijo, el resultado de la expresión puede ser distinto, dependiendo del contexto.
Incrementación Decrementacion
++n --n
n += 1 n -= 1
n= n+1 n= n-1

5. Enliste los operadores relacionales, proporcione un ejemplo y su función.
Operador Significado Ejemplo
== Igual a A==b
!= No igual a A!=b
> Mayor que a>b
< Menor que A>= Mayor o igual que a>=b
<= Menor o igual que a<=b

6. Construya las tablas de verdad de las operaciones and y or.

Tabla de operador lógico &&
Operandos
a b a&&b
Verdadero(1) Verdadero Verdadero
Verdadero(1) Falso Falso
Falso(0) Verdadero Falso
Falso(0) Falso Falso

Tabla del operador lógico ||
Operandos
a b a||b
Verdadero(1) Verdadero Verdadero
Verdadero(1) Falso Verdadero
Falso(0) Verdadero Verdadero
Falso(0) Falso Falso

7. Que es un operador de dirección. Cuales existen y explique su funcionamiento.

Son operadores que permiten las direcciones de las variables y registros en general.
Operador Acción
* Lee el valor de apuntado por la expresión. El operando corresponde con un puntero y el resultado del tipo apuntado.
& Devuelve un puntero al objeto utilizado como operando, que debe ser un lvalue(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, estructura) apuntado por el operando de la izquierda.

8. Proporcione 3 ejemplos de operadores condicionales y explique su función.
Es un operador ternario que devuelve un resultado cuyo valor depende de la condición comprobada. Tiene asociatividad a derechas.
ventas>150000? Comisión=100: comisión=0; evalúa ventas para ver qué comisión se ejecuta.
n>= 0? 1:1 1 si n es positivo, -1 si n es negativo
m>=n? m:n devuelve el mayor valor de m y n

9. Proporciones 2 ejemplos que utilicen el operador coma y explique su función.
Permite combinar dos o más expresiones separadas por comas en una sola línea. Se evalúa primero la expresión de la izquierda y luego las restantes expresiones de izquierda a derecha. La expresión mas ala derecha determina el resultado global.
i++, j++; equivale a i++; j++;
i++; j++, k++; equivale a i++; j++; k++;
i=10; j=(i=12, i+8); y vale j vale 20 ya q la segunda i vale 12

10. Explique la función del operador corchete [] y proporcione 2 ejemplos.
Sirve para dimensionar las arrays y designar un elemento un array. Ejemplos:
double v[20] Define un array de 20 elementos
printf (“v[2]=%e”, v[2]);

11. A que se refiera a la conversión 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 (ejecutadas automáticamente) o explicitas (solicitadas específicamente por el programador).

12. Enliste los operadores con mayor grado de prioridad(al menos 4 niveles).
Prioridad Operadores Asociatividad
1 . -> [] () i-d
2 ++ -- ~ ! - + & sizeof (tipo) d-i
3 */ % i-d
4 + - i-d
5 << >> i-d
6 < <= > >= i-d
7 == != i-d
8 & i-d
9 ^ i-d
10 | i-d
11 && i-d
12 || i-d
13 ?: (expression conditional) i-d
14 = *= /= %= += -=
<<= >>= &= /= ^= i-d
15 , (operator coma) d-i

lunes, 30 de marzo de 2009

Cuestionario Capitulo 4- 3er PARCIAL

1. Defina los siguientes conceptos y proporciones al menos 3 ejemplos:
Operadores aritmeticos
Operadores logicos
Operasores relacionales

2. Que son la reglas de prioridad y asociatividad?
3. Proporcione un ejemplo de cada tipo de opèrador de asignacion que existe y describa su funcion.
4. Explique que son los operadores de incremento y decremento, proporcione 2 ejemplos de cada uno y su funcion.
5. Enliste los operadores relacionales, proporcione un ejemplo y su funcion.
6. Construya la tablas de verdad de la operaciones and y or.
7. Que es un operador de direccion. Cuales existen y explique su funcionamiento.
8. Proporcione 3 ejemlpos de operadores condicionales y su funcion.
9. Proporciones 2 ejemplos que utlicen el operador coma y explique su funcion.
10. Explique la funcion del operador corchete [] y proporcione 2 ejemplos.
11. A que se refiera ala conversion de tipos.
12. Enliste los operadores con mayor grado de prioridad(al menos 4 niveles).

jueves, 19 de marzo de 2009

Ejercicio de unidad 4

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

Este programa primero declara una variable y despues le asigna un valor ala variable, despues muestra l valor de esta, siguiente multiplica la variable por 10 y muestra el nuevo valor de la variable.

jueves, 12 de marzo de 2009

Programas

3.1

Este programa llama a un archivo con informacion que ocupas.

3.2

Este programa muestra la palabra imprime la palabra atapuerca pro emite una copia..

3.3


Este micro programa aniliza datos y los compara para si tomar una decision de que operacion siguente se va hacer.




3.4















Emite un sonido y aqui no lo podemos oir x q no tngo bocinas ni drivers de sonido.

3.5
















Este te indica q introduzcas las iniciales tuyas y t muestra un letreto q dice "hola (tus iniciales)".


3.6



Este muestra mensajes definidos y etalbecidos y la parte de ellos que entre en l num de caracteres establecidos n el valor anteriror.

viernes, 6 de marzo de 2009

Ejercicios.


3.3





3.1






3.2



Primera parte del resumen del capitulo 3

CHAPTER 3

3.1 EXTRUCTURA 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 de instrucciones que realiza una o mas acciones.


3.1.1. Directivas del preprocesador
Es un programa en C se puede considerar como un editor de texto inteligente que consta de directivas (instrucciones al copilador antes de que se compile el programa principal). las directivas mas usuales son #include y #define.


3.1.2. Declaraciones globales
Las declaraciones globales indican al compilador que las funciones definidas por el usuario o variables asi declaradas son comunmente a todas las funciones de su programa. Las declaraciones globales se situan antes de la funcion main().


3.1.3. Funcion main
Cada programa main tiene una funcion main () que es el punto de entrada al programa. su estructura es main ().Las secuencias incluidas entre las llaves {...} se denomina bloque. Un programa debe tener solo una funcion main (). Si intenta hacer dos funciones main () se produce un error. ademas de la funcion main (), un programa en C consta de una coleccion de funciones.


3.1.4. Funciones de unidades por el usuario

Un programa en C es una coleccion de funciones. Todos los programas se construyen a traves de una o mas funciones que se integran para crear una aplicacion. todas las instrucciones tienen una o mas secuencias C y se crean generalmente para para realizar una unica tarea, como imprimir la pantalla, escribir un archivo, o cambiar el color de la pantalla.

3.1.5. Comentario
Es cualquier informacion que añade a su archivo fuente para proporcionar documentacion de cualquier tipo.


3.2 Creacion de un programa

Una vez un programa creado en C como el anterior; el anterior los pasos a dar dependeran del compilador C q se utilice. Sin embargo, seran similares para crear un programa se utilizan las siguientes etapas:
1. Definir su programa.

2. Definir directivas del procesador.
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.

3.4 Depuracion de un programa en C
el proceso de encontrar errores se denomina depuracion del programa. Existen diferentes situaciones en las cuales se suelen introducir errores en un programa. dos de las mas frecuentes son:
violacion de las reglas gramaticales del lenguaje de alto nivel en el que se escribe el programa.
los errores de diseño del algoritmo nn el que esta basado el programa.


3.4.1 Errores de sintaxis
son aquellos que se producen cuando el programa viola la sintaxis, es decir, las reglas de gramatica del lenguaje. estos errores se suelen detectar por el copilador durante un proceso de compilacion. algunos errores tipicos:
punto y coma despues de la cabecera de main().
omision de punto y coma al final de una sentencia.
olvido se la secuencia */ para finalizar un comentario.
olvido de las dobles comillas al cerrar una cadena.


3.4.2 errores logicos
representa errores del programa en el diseño del algoritmo y posterior programa. son mas dificiles de encontrar y aislar ya que no suelen ser detectado por el copilador.


3.4.3 errores de regresion
son aquellos que se crean accidentalmente cuando se intenta corregir un error logico


3.4.4 mensajes de error
los compiladores emiten mensajes de error o de advertencia durante las faces de copilacion, de enlace o de ejecucion de un programa.


errores fatales: son raros. algunos de ellos indican un error interno del copilador. cuando ocurre un erros fatal, la compilacion se detiene inmediatamente, se debe tomar la accion apropiada y a continuacion se vuelve a iniciar la compilacion.


errores de sintaxis: son los erres tipicos de sintaxis, errores de linea de ordenes y errores de acceso a memoria o disco. el compilador terminara la fase actua de compilacion y se detiene.


adevertencias: no impiden la compilacion. indican condiciones que son sospechas, pero son legitimas como parte del lenguaje.


3.5 pruebas
los errores de ejecución ocurren después que el programa se ha copilado con exito y aun se esta ejecutando. existen ciertos errores que la computadora solo puede detectar cuando se ejecuta el programa. los errores logicos pueden aparecer por un mal diseño de algoritmo y posterior programa. 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 se debe hacer varias veces utilizando diferentes entradas, preparadas, por personas diferentes al programador, que pueden indicar suposiciones no evidentes en la leccion de prueba, una vez que se ha determinado que un programa contiene un error logico, la localizacion del error es una de las partes mas dificiles de la programacion.

viernes, 27 de febrero de 2009

ejrecicio 2

Realizar un programa que despliegue los siguentes datos; cada dato en una linea diferente y a doble espacio de linea.

  • Nombre
  • Direccion
  • Colonia
  • Telefono
  • Escuela
  • Carrera

martes, 10 de febrero de 2009

Resumen del capitulo 2 (atrasado)

Capitulo 2

METODOLOGÍA DE LA PROGRAMACIÓN Y DESARROLLO DE SOFTWARE

La resolución de un problema con una computadora se hace escribiendo un programa, que exige al menos los siguientes pasos:
Definición o análisis del problema.
Diseño de algoritmo.
Transformación del algoritmo en un programa.
Ejecución y validación del programa.

FASES EN LA RESOLUCIÓN DE UN PROBLEMA

Las fases de resolución de un problema con computadora son:
Análisis del problema.
Diseño del algoritmo.
Codificación.
Compilación y ejecución.
Verificación.
Depuración
Mantenimiento.
Documentación.
*ciclo de vida de un sistema
Análisis del problema: el problema se analiza teniendo presente las especificaciones del cliente.
Diseño: aquí se diseña la solución que conducirá a un algoritmo que resuelva el problema.
Codificación: la solución se escribe en la sintaxis del lenguaje de alto niel y se obtiene un programa fuente se copila a continuación.
Ejecución, verificación y depuración: el programa se ejecuta, se comprueba y se eliminan los errores denominados bugs.

ANÁLISIS DEL PROBLEMA

Esta fase requiere una clara definición, donde se contemple exactamente lo que debe hacer el programa y el resultado o solución deseada.

DISEÑO DEL ALGORITMO

En esta etapa de diseño se determina como hace el programa la tarea solicitada.

HERRAMIENTAS DE PROGRAMACIÓN

DIAGRAMAS DE FLUJO
Un diagrama de flujo (flowchar) es una representación gráfica de un algoritmo. Los símbolos utilizados han sido normalizados por el instituto norteamericano de normalización (ansi), y los más frecuentemente empleados se muestran a continuación.

PSEUDOCÓDIGO
Con la pe, el pseudocódigo sigue siendo un excelente medio para expresar la lógica de un programa. A continuación se muestran algunos ejemplos de palabras para construir algoritmos en pseudocódigo.

Codificación de un programa

Es la escritura de un lenguaje de programación de la representación del algoritmo desarrollada en las etapas precedentes.

COMPILACIÓN Y EJECUCIÓN DE UN PROGRAMA
Una vez que el algoritmo se ha convertido de un programa fuente, es preciso introducirlo en memoria mediante el teclado y almacenarlo posteriormente en un disco. Esta operación se realiza mediante un programa editor. Posteriormente el programa fuente se convierte en un archivo de programa que se guarda en disco. El programa fuente debe ser traducido a lenguaje maquina, este proceso se realiza con el compilador y sistema operativo que se encarga prácticamente de la copelación.

VERIFICACIÓN Y DEPURACIÓN DE UN PROGRAMA

Es el proceso de ejecución del programa con una amplia variedad de datos de entrada, llamados datos de test o prueba, que determinaran se el programa tiene errores (bugs).
Documentación y mantenimiento
Consta de las descripciones de los pasos a dar en el proceso de resolución de dicho problema. La documentación es vital cuando se desea corregir posibles errores futuros o bien cambiar el programa. Tales cambios se denominan mantenimiento del programa.

CONCEPTOS:

PROGRAMACIÓN MODULAR:

Es uno de los métodos de diseño más flexibles y potente para mejorar la productividad de un programa. En programación modular se divide en módulos, cada uno de las cuales ejecuta una actividad única y se codifican independientemente de otros módulos. Cada uno de estos módulos se analiza, codifica y pone a punto por separado.

PROGRAMACIÓN ESTRUCTURADA:

Significa escribir un programa de acuerdo a las siguientes reglas:
· El programa tiene un diseño modular.
· Los módulos son diseñados de modo descendente.
· Cada modulo se codifica utilizando las tres estructuras de control básico: secuencia, selección y repetición.
Esta es el conjunto de técnicas que incorporan:
· Recursos abstractos.
· Diseño descendente (top-Down).
· Estructuras básicas.

CONCEPTO Y CARACTERÍSTICAS DEL ALGORITMO

Un algoritmo es un método para resolver un problema mediante una serie de pasos, precisos, definidos y finitos.
*características de un algoritmo
Preciso (indica el orden de realización en cada paso)
Definido (si se sigue dos veces, obtiene el mismo resultado cada vez)
Finito (tiene fin; un número determinado de pasos)

ESCRITURA DE ALGORITMOS:

Consiste en realizar una descripción pasa a paso con el lenguaje natural del citado algoritmo.

REPRESENTACIÓN GRAFICA DE ALGORITMOS:

Para representar un algoritmo puede sutilizar distintos métodos, ya sea escrito o gráficamente como pseudocódigos, diagramas de flujo y diagramas n-s.

PSEUDOCÓDIGO:

Con la pe, el pseudocódigo sigue siendo un excelente medio para expresar la lógica de un programa. A continuación se muestran algunos ejemplos de palabras para construir algoritmos en pseudocódigo.

DIAGRAMA DE FLUJO:
(Flowchar) es una representación gráfica de un algoritmo. Los símbolos utilizados han sido normalizados por el instituto norteamericano de normalización, y los más frecuentemente empleados se muestran a continuación.

DIAGRAMAS DE NASSI - SCHNEIDERMAN
El diagrama n-s o también conocido como diagrama de Chapin es una técnica de especificación de algoritmos que combina la descripción textual, propia del pseudocódigo, con la representación gráfica del diagrama de flujo.
El diagrama n-s 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 y decrementar hacer función entero real carácter cadena lógico retornar
Los símbolos utilizados en el diagrama de Chapín son corresponden a cada tipo de estructura. Dado que se tienen tres tipos de estructuras, se utilizan tres símbolos. Esto hace que los procesos del algoritmo sean más fáciles de representar y de interpretar.
Los diagramas n s constituyen un método gráfico de descripción de algoritmos desarrollado por i. Nassi y b. Scheneiderman, en este tipo de diagramas el símbolo básico es el rectángulo, dentro del cual se describen las acciones que constituyen el algoritmo, se podría decir que un diagrama n s es un diagrama de flujo en el que se omiten las líneas de unión y las cajas o rectángulos son contiguos, el aspecto general de un algoritmo expresado según esta forma de descripción.de esta forma se representan todas las acciones que se realicen de forma secuencial, es un conjunto de cajas en cada una de las cuales puede aparecer una o varias acciones, la figura anterior muestra el aspecto de una estructura condicional, en ella la condición ocupa la parte central y a cada uno de los lados se describen las acciones que se realizarán cuando la condición sea verdadera o cuando sea falsa, dentro de los conjuntos de acciones correspondientes a la opción verdadera y falsa, se utilizará cualquier estructura de control, secuencial, repetitiva o condicional, puede ocurrir que no se realice nada cuando la condición sea falsa, de esta forma se representa el ciclo repetitivo que en pseudocódigo se denominaba bucle mientras, describe un conjunto de acciones que se repetirán mientras la condición sea verdadera, al igual que antes, en la zona donde se ha puesto acciones bucle se detallarán las acciones a realizar con cualquier estructura de control, así se representa una estructura repetitiva, que realiza un conjunto de acciones hasta que una condición sea verdadera, se utilizará con las mismas consideraciones que la estructura repetitiva descrita anteriormente o la condicional.

MÉTODOS FORMALES DE VERIFICACIONES DE PROGRAMAS:
Aunque la verificación formal de programas se sale fuera del ámbito de este libro, por su importancia vamos a considerar dos conceptos clave, asertos y precondiciones/pos condiciones invariantes que ayudan a documentar, corregir y clarificar el diseño de módulos y de programas.

Ejercicios..

Tarea


  1. Dados 3 numeros, determinar si la suma d cualquier pareja de ellos es igual al tercer numero. si se cumples esta condicion escribir "iguales" en caso contrario escribir "distintos".



  1. Escribir un algoritmo que lea 4 numeros y a continuacion imprima el mayor de los 4.

poner letrero al impresion.

Guia

Concepto de:

Algoritmo
computadora
compilador
interprete
dispositivos de almacenamiento
hardware
software
lenguaje machina
lenguaje ensamblador
lenguaje de progrmacion
Lenguaje C

Elementos del diagrama de flujo
Pseudocodigo
Variables y constantes
digramas N-S

solucion Diagrama delta 0 o negativo


lunes, 9 de febrero de 2009

Resolucion

Solucion del Maestro

viernes, 6 de febrero de 2009

Ejercicios en clase

Realizar un algortimo que lea la edad en meses de una persona y dertermine si puede votar o no(imprime si puede votar o no puede votar).

1. Inicio
2. Leer m
3. si m => 216 hacer paso 4 si no paso 6
4. imprimir "si puede votar"
5. saltar a paso 7
6. imprimir "no puede votar"
7. Fin

Problema de tarea de ayer.
Si delta es negativo mandar un mensaje "delta es negativo y no es posible calcular raiz cuadrada".

jueves, 5 de febrero de 2009

Tarea

realizar un algoritmo que calcuelel valor d x1 y x2 basado en una ecuacion cuadratica de segundo grado y la formula general.


1 Inicio
2 Leer a, b, c.
3 calcular: x1= [-b+√[a^2-(4*a*c)]]/2*a x2= [-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

jueves, 29 de enero de 2009

Algoritmpo de Salario

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

Algoritmo area del circulo

Inicio
Leer radio
Calcular área= 3.141592653589*r2
Imprimir área
Fin

lunes, 26 de enero de 2009

Algoritmos

Tarea
Calcular la paga neta de un trabajador conociendo en número 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, impuestos, paga neta
Fin

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

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 de diseño se establece como hace el programa la tarea solicitada. Los metodos mas eficaces para el proceso de diseño se basa en el conocido DIVIDE Y VENCERAS, serparar 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
Diagrama de Flujo
Es una representacion grafica de un algoritmo.

Simbologia

Pseudocodigo

miércoles, 21 de enero de 2009

Tarea Diagrama N-S

  • Definición.
  • El diagrama N-S o también conocido como diagrama de Chapin es una técnica de especificación de algoritmos que combina la descripcion textual, propia del pseudocódigo, con la representación gráfica del diagrama de flujo.

    El diagrama N-S cuenta con un conjunto limitado de simbolos 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

    Los símbolos utilizados en el diagrama de Chapin son corresponden a cada tipo de estructura. Dado que se tienen tres tipos de estructuras, se utilizan tres símbolos. Esto hace que los procesos del algoritmo sean más fáciles de representar y de interpretar.

    Simbologia







    Ejemplo.

    Capitulo 2

    Introduccion

    1. Definicion Y analisis
    2. Diseño algoritmo
    3. Transformacion del algoritmo-programa
    4. Ejecucion y validacion

    Algortimo

    Metodo o serie d instrucciones ordenada para resolver un problema. Sus caracteristcas son: Preciso, definido y finito.

    Heuristica

    Dos objetivos fundamentales son encontrar algoritmos con buenos tiempos de ejecución y buenas soluciones, usualmente las óptimas. Una heurística es un algoritmo que abandona uno o ambos objetivos; por ejemplo, normalmente encuentran buenas soluciones, aunque en ocasiones no hay pruebas de que la solución no pueda ser arbitrariamente errónea; o se ejecuta razonablemente rápido, aunque no existe tampoco prueba de que deba ser así.
    A menudo, pueden encontrarse instancias concretas del problema donde la heurística producirá resultados muy malos o se ejecutará muy lentamente. Aún así, estas instancias concretas pueden ser ignoradas porque no deberían ocurrir nunca en la práctica por ser de origen teórico, y el uso de heurísticas es muy común en el mundo real.

    lunes, 19 de enero de 2009

    Conceptos basicos del lenguaje C

    Lenguaje de Programacion
    Los progrmas de las computadoras modernas constan de secuencias de instrucciones que se codifican como secuencias de digitos numericos que podran entender dichas computardoras. El sistema de codificacion se conoce como lenguaje maquina que es el lenguaje nativo de una computadora.

    Clasificacion de los lenguajes de programacion
    En los 10 cuando aparecieron las primeras computadoras digitales ele lenguaje que se utilizaba para programar era el lenguaje se traducia directamente el codigo maquina, los investigadores de la epoca simplificaron el proceso de programacion desarrollando sistemas de notacionenl os cuales las instreucciones se representaban en formatos nemonicos en vez de formatos numericos que ran mas dificiles de recordar. Para convertir los programas escritos en codigo nemotecnico a lenguaje maquina,s e desarrollaron programas ensambladores, estos son progamas que traducen otros programas escritos en codigo nemotecnico en instrucciones numericas en el lenguaje maquina que son compatibles y legibles por la maquina.
    Despues en los 50 y 60 comezaron a desarrollarse lengujaes de programacion de tercera generacion que hacian diferencia a los demas, se llamaron lenguajes de alto nivel. Algunos FORTAN y COBOL Pasando los años aparecieron nuevos tales como Pascal, Basic, C, C++, Ada, Java, C#, HTML, XML. Pero los programas escritos en lenguaje de alto nivel necesitan ser traducidos a codigo maquina..

    viernes, 16 de enero de 2009

    Bienvenida!

    Poes nada intersante!!!!