Sunteți pe pagina 1din 4

Apuntes de la clase de Programación Fecha: 30 de julio de 2012

Historia
 UNIVAC – ENIAC – EDVAC
 1976: Apple
 1981: IBM → PC → Microsoft

Computadora

Datos Computadora Información

Entrada Proceso Salida

Hardware

Modelo de von Neumann


 Dispositivos de entrada y salida
 CPU
 Memoria principal

Software
 Software del sistema: sistema operativo, editores de texto, compiladores/intérpretes.
 Software de aplicación: procesadores de texto, hojas de cálculo, bases de datos, etc.

Algoritmos, programas y lenguajes de programación

Algoritmo: (del griego y latín, dixit algorithmus y este a su vez del matemático persa Al-Juarismi1,
siglo IX). Enunció paso a paso las reglas para ejecutar las operaciones básicas en matemáticas.

Algoritmo: Conjunto de pasos para resolver un problema. “Un algoritmo es un procedimiento


computacional bien definido que toma un conjunto de valores como entrada y produce un
conjunto de valores como salida.”
Características de un algoritmo
 Preciso: indicar el orden de realización en cada paso.
 Definido: si se sigue dos veces, obtiene el mismo resultado cada vez (dudoso)
 Finito: tiene un fin. Tiene un número determinado de pasos.

Dar ejemplos de algoritmos de la vida cotidiana


 Suma de dos números enteros
 Recetas de cocina
 Cambiar la rueda de un auto

- Aflojar los tornillos de la rueda pinchada


- Levantar el auto hasta que la rueda pueda girar libremente
- Quitar los tornillos y la rueda pinchada
- Colocar la rueda de repuesto y los tornillos
- Bajar el auto
- Apretar los tornillos

Formas de expresión de un algoritmo


 Lenguaje natural
Ejemplo: verificar si un número X es primo.
El algoritmo más sencillo que puede utilizarse para saber si un número X es primo es el siguiente:
se divide X entre 2,3,4,5,...,X-1. Si X es divisible por alguno de ellos, no es un número primo.

 Fórmulas
Ejemplo: Hallar las raíces de
( √ )

( √ )

 Diagramas de flujo
 Pseudocódigo
Ejemplo: Suma de dos números

Entrada: a,b → números


Salida: s, la suma de a y b

inicio
leer (a,b)
s=a+b
escribir (s)
fin

 Programa
#include<stdio.h>
#include<conio.h>
void main(void)
{
int a, b, s;
printf("Ingrese el primer número ");
scanf("%d",&a);
printf("\n\nIngrese el segundo numero ");
scanf("%d",&b);
s=a+b;
printf("\n\nEl resultado de la adicion es: %d",s);
getch();
}

Lenguajes de programación

 Lenguaje de máquina: dependiente del procesador, usa 0 y 1.


 Lenguajes de bajo nivel: ensamblador. Difícil de aprender y dependiente de la máquina.
 Lenguajes de alto nivel: C, C++, C#, Java, Pascal, Visual Basic, Fortran, otros. Se asemeja
más al razonamiento humano.

Libro a usar: Brian W. Kernighan and Dennis M. Ritchie - “The C programming Language”
Ejercicios
1. Describir los pasos para el arranque de un automóvil.
2. Describir el procedimiento para preparar té.
3. Escribir un algoritmo que obtenga el perímetro y área de un rectángulo, dados la base y la
altura del mismo.
4. Se desea obtener el salario de un trabajador conociendo la cantidad de horas trabajadas,
el salario por hora y la tasa de impuesto (%) que se aplica como deducción.
5. Desarrollar un algoritmo que permita leer dos valores distintos, determinar cual de los dos
valores es el mayor y escribirlo.
6. Desarrollar un algoritmo que permita leer tres valores y almacenarlos en las variables A, B
y C, respectivamente. El algoritmo debe imprimir el mayor de los valores.
7. Desarrollar un algoritmo que realice la sumatoria de los números enteros comprendidos
entre el 1 y el 10, es decir, 1 + 2 + 3 + …. + 10.
8. Describir un algoritmo que permita intercambiar los valores de las variables A y B, a través
de una variable AUX.
9. Supongamos que se proporciona una secuencia de N números, tales como:

Mediante el contador CON, contar e imprimir el número de ceros de la secuencia.


10. Escribir un algoritmo que calcule el promedio de N números.

S-ar putea să vă placă și