jueves, 29 de enero de 2009

TAREA DE ALGORITMOS 2.1 y 2.2

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

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

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

B) Cocinar una tortilla:

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

C) Arreglar un pinchazo de una bicicleta:

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

D) Freír un huevo:

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

2.2 Escribir un algoritmo para:

(A)Sumar dos números enteros:

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

(B)Restar dos números enteros:

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

(C)Multiplicar dos números enteros:

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

Dividir dos números enteros:

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

ALGORITMOS

Algoritmo del area de un circulo:


  • Inicio

  • Leer radio

  • Calcular area= 3.141592653589*r2

  • Imprimir area

  • Fin

Algoritmo de un salrio:

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

miércoles, 28 de enero de 2009

PROGRAMACION MODULAR

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

viernes, 23 de enero de 2009

DISEÑO DEL ALGORITMO

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

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

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

TAREA

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

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

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

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

miércoles, 21 de enero de 2009

DIAGRAMA NASSI-SCHNEIDERMAN

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

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

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

FUENTE: (www.monografias.com).

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

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

Desventajas.

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

FUENTE: (html.rincondelvago.com).

METODOLOGIA DE LA PROGRAMACION Y DESARROLLO DE SOFTWARTE

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

Fases en la resolucion de problemas:

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

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

Caracterisiticas:

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

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

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

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

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

lunes, 19 de enero de 2009

Conceptos Basicos del Lenguaje C

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

Los principales tipos de lenguajes de programacion son:

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

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

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

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

PARADIGMAS DE LA PROGRAMACION

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

HISTORIA DEL LENGUAJE C

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

viernes, 16 de enero de 2009

bienvenida!!!!!!! xD

16-ene-09

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