manual de tecnicas de programacion lenguaje c semestre febrero - julio 2010

49
MANUAL DE MANEJO DE TÉCNICAS DE PROGRAMACIÓN

Upload: jesus-antonio-toledo-lopez

Post on 09-Aug-2015

38 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

MANUAL DE

MANEJO DE

TÉCNICAS DE

PROGRAMACIÓN

Page 2: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

LIA. Jesús Antonio Toledo López

Page 3: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

TECNICA

Una técnica es un procedimiento o conjunto de estos (reglas, normas o protocolos), que tienen

como objetivo obtener un resultado determinado, ya sea en el campo de la ciencia, de la

tecnología, del arte, de la educación o en cualquier otra actividad.

¿QUÉ ES LA PROGRAMACIÓN?

La programación es la creación de un programa de computadora, formado por un conjunto

de instrucciones que una computadora puede ejecutar.

Se denomina programación al proceso de escribir un programa o software.

LENGUAJES DE PROGRAMACIÓN

Los lenguajes de los humanos y los lenguajes de las computadoras son muy diferentes. Los

lenguajes de programación sirven para escribir programas que permitan la comunicación

usuario/máquina. Los programas son escritos en diversos lenguajes de programación, los cuales

son entendibles para el ser humano. Para que la maquina entienda estos programas se tienen que

compilar, la compilación, es la transformación del código fuente entendible por nosotros para

convertirse en lenguaje máquina, entendible por la computadora.

TIPOS DE LENGUAJES

Los principales tipos de lenguajes utilizados en la actualidad son tres:

El lenguaje máquina o código binario. son aquellos que están escritos en lenguajes

directamente inteligibles por la máquina, ya que sus instrucciones son cadenas binarias

(cadenas o series de caracteres – dígitos – 0 y 1) que especifican una operación

00 – 0000, 01 – 0001, 02 – 0010, 03 – 0011, 04 – 0100, 05 – 0101, 06 – 011007 – 0111, 08 – 1000, 09 – 1001, 10 – 1010

Una instrucción típica de suma sería: ADD, M. N. P. Esta instrucción podía significar sumar el número contenido en la posición de memoria M al número almacenado en la posición de memoria N y situar el resultado en la posición de memoria P . evidentemente, es mucho más sencillo recordar la instrucción anterior que con su equivalente en código máquina: 0110

1001 1010 1011

LIA. Jesús Antonio Toledo López

Page 4: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Las instrucciones en lenguaje máquina dependen del hardware de la computadora y, por tanto,

diferirán de una computadora a otra. El lenguaje máquina de una PC será diferente de un sistema

HP (Hewlett Packard), Dell, COMPAQ o un sistema IBM.

Para evitar los lenguajes máquina, se han creado otros lenguajes que permiten escribir programas con

instrucciones similares al lenguaje humano (casi siempre en ingles). Estos lenguajes se denominan de bajo y

alto nivel.

Los lenguajes de bajo nivel son más fáciles de utilizar que los lenguajes máquina, pero, al igual

que ellos, dependen de la máquina en particular. El lenguaje de bajo nivel por excelencia es el

ensamblador (assembly lenguaje). Las instrucciones en lenguaje ensamblador son instrucciones

conocidas como nemotécnicos. La nemotecnia o mnemotecnia es el procedimiento de asociación

mental de ideas, esquemas, ejercicios sistemáticos, repeticiones, etc. para facilitar el recuerdo de

algo. por ejemplo nemotécnicos típicos de operaciones aritméticas son: en ingles, ADD, SUB,

DIV, etc.

Un programa escrito en lenguaje ensamblador no puede ser ejecutado directamente por la

computadora, en esto se diferencia esencialmente del lenguaje máquina, sino que requiere una

fase de traducción al lenguaje máquina.

El programa original escrito en lenguaje ensamblador se denomina programa o código fuente y

el programa traducido en lenguaje máquina se conoce como programa objeto, ya directamente

inteligible por la computadora.

El lenguaje ensamblador presenta ventaja frente a los lenguajes máquina de su mayor facilidad

de codificación. Los inconvenientes son la formación de los programadores, que es más

compleja que la correspondiente a los programadores de alto nivel.

LIA. Jesús Antonio Toledo López

Page 5: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Los lenguajes de alto nivel son los más utilizados en la actualidad por los programadores. Están

diseñados para que las personas escriban y entiendan los programas de un modo mucho más

fácil que los lenguajes máquina y ensamblador.

Los programas escritos en lenguaje de alto nivel son portables o transportables, lo que significa

de poder ser ejecutados en diferentes tipos de computadoras, al contrario que los programas en

lenguaje máquina o ensamblador, que sólo se pueden ejecutar en un determinado tipo de

computadoras. Las ventajas son las siguientes:

- El tiempo de formación de los programadores es relativamente corto comparado con otros

lenguajes.

- La escritura de programas se basan en reglas sintácticas a los lenguajes humanos. Nombres

de las instrucciones, pueden ser READ, WRITE, PRINT, etc.

Los inconvenientes se concretan en:

- El tiempo de ejecución de los programas es mucho mayor.

- Aumento de la ocupación de memoria.

Los lenguajes de programación de alto nivel existentes hoy son muy numerosos: C, C++, VISUAL C+

+, FORTRAN, PASCAL VISUAL BASIC, JAVA, C#, PROLOG BORLANN DELPHI, ETC.

ALGORITMO

La palabra algoritmo, la cual proviene de la traducción al latín de la palabra ALKHOWARIZMI, nombre de un matemático y astrónomo árabe que escribió un tratado sobre manipulación de números y ecuaciones en el siglo IX.

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.

Ejemplos de algoritmos son: instrucciones para montar en una bicicleta, hacer una receta de cocina, etc. Los algoritmos se pueden expresar a través de diagramas de flujo y pseudocódigo.

LIA. Jesús Antonio Toledo López

Page 6: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

IDENTIFICACIÓN DE FASES DEL CICLO DE VIDA DE UN SOFTWARE

El término ciclo de vida del software describe el desarrollo del software, desde la fase inicial hasta la fase final. El propósito de este, es definir las distintas fases intermedias que se requieren para validar el desarrollo del software, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo, se asegura de que los métodos utilizados sean apropiados.

El ciclo de vida básico de un software consta de los siguientes procedimientos:

ANÁLISIS DEL PROBLEMA.

La primera fase de la resolución del problema requiere una clara definición, donde se contemple exactamente lo que debe hacer el programa y el resultado o solución deseada. Dado que se busca una solución por computadora, se precisan especificaciones detalladas de entrada y salida.

Para poder definir bien un problema es conveniente responder a las siguientes preguntas:

¿Qué entradas se requieren?

¿Cuál es la salida deseada?

¿Qué método produce la salida deseada?

DISEÑO DEL ALGORITMO

Una vez analizado el problema, en esta etapa se diseña una solución que conducirá a un algoritmo que resuelva el problema. En la etapa del diseño se determina como hace el programa la tarea solicitada.

Las dos herramientas más utilizadas comúnmente para diseñar algoritmos son: diagramas de flujo y pseudocódigo.

CODIFICACIÓN.

En esta etapa se escribe en un lenguaje de programación la representación del algoritmo. Dado que el diseño de un algoritmo es independiente del lenguaje de programación utilizado para su implementación, el código puede ser escrito con igual facilidad en un lenguaje o en otro.

El programa que se escribe en un lenguaje de programación, se guarda en un archivo llamado archivo o código fuente.

LIA. Jesús Antonio Toledo López

Page 7: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

COMPILACIÓN Y EJECUCIÓN

Una vez que el algoritmo se ha convertido en código fuente, este debe ser traducido a lenguaje máquina. Este proceso se realiza con el compilador, que se encarga prácticamente de la compilación.

Si tras la compilación se presentan errores en el programa fuente, es preciso volver a editar el programa, corregir los errores y compilar de nuevo. Este proceso se repite hasta que no se producen errores, obteniéndose el programa objeto. Una vez que se crea el programa objeto, se realiza la fase de enlace (link), carga, del programa objeto con las librerías del programa del compilador. El proceso de enlace produce un programa ejecutable.

PRUEBAS DE FUNCIONAMIENTO Y DEPURACIÓN DEL PROGRAMA

Las pruebas de funcionamiento 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 determinan si el programa tiene errores. La depuración es el proceso de encontrar los errores del programa y corregir o eliminar dichos errores.

DOCUMENTACIÓN

La importancia de la documentación se destaca por su decisiva influencia en el producto final. Programas pobremente documentados son difíciles de leer, más difíciles de depurar y casi imposible de mantener y modificar.

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 el análisis, los diagramas de flujo y los pseudocódigos, manuales de usuario con instrucciones para ejecutar el programa y para interpretar los resultados.

MANTENIMIENTO

La documentación es vital cuando se desea corregir posibles errores futuros o bien cambiar el programa. Tales cambios se denominan mantenimiento del programa después de cada cambio.

USO DE HERRAMIENTAS DE REPRESENTACIÓN DE ALGORITMOS

LIA. Jesús Antonio Toledo López

Page 8: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

PSEUDOCÓDIGO

El pseudocódigo = Pseudo (Supuesto) + Código (Instrucción) es un lenguaje de especificación

(descripción) de algoritmos. El uso de tal lenguaje hace el paso a la codificación final (esto es, la

traducción a un lenguaje de programación) relativamente fácil. El pseudocódigo se considera un

borrador, dado que este tiene que traducirse posteriormente a un lenguaje de programación.

La ventaja del pseudocódigo es que en su uso, en la planificación del programa, el programador se

puede concentrar en la lógica y no preocuparse de las reglas de un lenguaje especifico.

El pseudocódigo utiliza para representar las acciones sucesivas palabras reservadas en ingles,

similares a sus homónimas en los lenguajes de programación, tales como: start, end, stop, if-then-

else, while-end, etc. Por fortuna, el uso del pseudocódigo se ha extendido en la comunidad

hispana con términos en español como: inicio, fin, parada, leer, escribir, si-entonces-si_no,

mientras, fin_mientras, repetir, hasta_que, etc.

EJEMPLOS DE PSEUDOCODIGOS

Pseudocódigo que permite a un alumno asistir a clases en su escuela

InicioLevantarmeLavarme los dientesBañarmeDesayunarLavarme los dientesPedir mi gasto y despedirmeTomar el camiónBajarme en la escuelaEntrar a la escuelaEntrar al salón

Fin

Pseudocódigo que permite hacer un par de huevos en tortaInicio

LIA. Jesús Antonio Toledo López

Page 9: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Tomar un sarténEcharle aceiteEncender la estufaPoner el sartén en el quemador de la estufaTomar los huevosRomperlos y echarlos a un platoPonerle sal y cebolla a los huevosRevolverlos con una cucharaEchar los huevos al sarténFreír los huevosServir los huevos

FinPseudocódigo que permita al usuario introducir por teclado dos números, calculando la suma y el producto de los números.

InicioEscribir Introducir los númerosLeer numero1, numero2Calcular suma = numero1 + numero2Calcular producto = numero1 * numero2Escribir La suma de los dos números es: sumaEscribir El producto de los dos números es: producto

FinPseudocódigo que permite hacer una taza de te

InicioTomar la jarraLlenarla de aguaEncender el fuegoPoner la jarra en el fuego

Mientras no hierva el agua Esperar

Fin mientrasTomar la bolsa de téIntroducirla en la jarra

Mientras no está hecho el té Esperar

Fin mientrasEchar el té en la taza

Fin

Pseudocódigo de un programa que permita calcular el área de un rectángulo

LIA. Jesús Antonio Toledo López

Page 10: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Inicio Escribir Introduzca la base y la altura

Leer base, altura Calcular área = base * altura Escribir El área del rectángulo es áreaFin

Pseudocódigo de un programa que proporciona el mayor de 2 números

InicioEscribir introduzca número 1Escribir introduzca número 2Leer numero1, número2

Si número 1 > numero 2 entonces Escribir El número mayor es: número 1

Si no Escribir El número mayor es: número 2 Fin si

Fin

- Pseudocódigo que calcula el salario bruto de un trabajador en función del número de horas trabajadas. Considerando el 10% de descuento fijo al salario bruto, para obtener el salario neto.

InicioEscribir horas_trabajadas, costo_horaLeer horas_trabajadas, costo_horaCalcular: salario_bruto = horas_trabajadas x costo_horaCalcular: descuento = salario_bruto x 10%Calcular: salario_neto = salario_bruto – descuentoEscribir: el salario neto del trabajador es: salario_neto

Fin

- Pseudocódigo que calcula el promedio (media aritmética) de 6 números.- Pseudocódigo que calcula el cuadro de x número.

CONSTRUCCIÓN DE DIAGRAMAS DE FLUJO.

LIA. Jesús Antonio Toledo López

Page 11: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Un diagrama de flujo (flowchart) es un diagrama que utiliza símbolos estándar y en el que cada

paso del algoritmo se visualiza dentro del símbolo adecuado y el orden en que estos pasos se

ejecutan se indica conectándolos con flechas denominadas líneas de flujos, porque indican la

secuencia en que se debe ejecutar.

SÍMBOLOS NOMBRES FUNCIÓN

TERMINAL(RECTANGULO REDONDEADO)Representa el comienzo, “inicio” y el “final” de un programa.

ENTRADA/SALIDA

(PARALELOGRAMA) Representa cualquier tipo de introducción de datos en la memoria desde los periféricos de entrada, o registro de la información procesada en un periférico de salida.

PROCESO

(RECTANGULO) Representa cualquier tipo de operación que pueda originar cambio de valor, formato o posición de la información almacenada en memoria, operaciones aritméticas, etc.

DECISIÓN

(ROMBO) Indica operaciones lógicas o de comparación entre datos, normalmente dos, y en función del resultado de la misma determina cuál de los distintos caminos alternativos del programa se debe seguir; normalmente tiene dos salidas: SI o NO

DECISIÓN MULTIPLE

En función del resultado de la comparación se seguirá uno de los diferentes caminos de acuerdo a dicho resultado.

CONECTOR

(CIRCULO) Sirve para enlazar dos partes cualesquiera en un diagrama.

LINEAS DE FLUJO

(FLECHAS) Indican el sentido de ejecución de las operaciones.

Ejemplos:

LIA. Jesús Antonio Toledo López

Algoritmo que proporciona el cuadrado de x número

Page 12: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Algoritmo que proporciona la suma de 3 números.

Pseudocódigo que proporciona la suma de 3 números

Inicio Escribir Introduzca numero1, numero2, numero3

Leer numero1, numero2, numero3 Calcular suma=numero1+numero2+numero3 Escribir la suma de los números es: sumaFin

Pseudocódigo que proporciona el cuadrado de x número

Inicio Escribir Introduzca un número

Leer número Calcular cuadrado = número * número Escribir el cuadrado del número es: cuadradoFin

Algoritmo que proporciona el promedio de 3 números.

LIA. Jesús Antonio Toledo López

Inicio

n1, n2, n3

Suma=n1+n2+n3

Suma

Fin

Inicio

Número

Cuadrado=número* número

Cuadrado

Fin

Page 13: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Pseudocódigo que proporciona el promedio de 3 números

Inicio Escribir Introduzca numero1, numero2, numero3

Leer numero1, numero2, numero3 Calcular promedio=numero1+numero2+numero3 Escribir el promedio de los números es: promedioFin

LIA. Jesús Antonio Toledo López

Inicio

n1, n2, n3

Promedio= (n1+n2+n3)/3

Promedio

Fin

Page 14: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Algoritmo que proporciona el mayor de 2 números.

Inicio Escribir Introduzca numero1, numero2

Leer numero1, numero2Si número 1 > numero 2 entonces

Escribir El número mayor es: número 1Si no

Escribir El número mayor es: número 2 Fin siFin

LIA. Jesús Antonio Toledo López

Inicio

N1, N2

N1>N2

Fin

N2 N1

Si No

Page 15: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Algoritmo que proporciona el mayor de 3 números

Inicio Escribir Introduzca numero1, numero2, numero3

Leer numero1, numero2, numero3Si número 1 > numero 2 entonces

Si número 1 > numero 3 entonces Escribir El número mayor es: número 1

Si no Escribir El número mayor es: número 3

Fin siSi no

Si número 2 > numero 3 entonces Escribir El número mayor es: número 2

Si no Escribir El número mayor es: número 3

Fin si Fin siFin

LIA. Jesús Antonio Toledo López

Inicio

N1, N2, n3

N1>N2

Fin

N3

Si No

N2>N3 N1>n3

N3 N2 N1

Page 16: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Algoritmo que proporciona el mayor de 4 números

LIA. Jesús Antonio Toledo López

Inicio

N1, N2, N3, N4

N1>N2

Fin

N3>N4

Si No

N1>n3

N1>N4

N1 N4 N3 N4

N2>N4

N2>n3

N3>N4

N3 N4 N2 N4

Si No Si

Si

No

No Si Si No No Si

Page 17: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

CODIFICACIÓN DE ALGORITMOS

LENGUAJE DE PROGRAMACION CEs un lenguaje de programación de alto nivel (alto nivel quiere decir próximo al lenguaje humano),

pero con características de bajo nivel (bajo nivel próximo al lenguaje máquina).

El lenguaje C es poderoso y flexible. La mayor parte del sistema operativo UNIX está escrito en C, e

incluso están escritos en C los compiladores e intérpretes de otros lenguajes.

Esta flexibilidad permite el uso de C en la programación de sistemas (por ejemplo para el diseño de

sistemas operativos) así como en la programación de aplicaciones (por ejemplo para redactar un

programa que resuelva un complicado sistema de ecuaciones matemáticas o un sistema de

facturación.

C es un lenguaje de programación estructurada de propósito general. Sus instrucciones constan de

ciertas palabras inglesas como if, else, for, do y while.

PALABRAS RESERVADAS.

FUNCIONES DE ENTRADA Y SALIDA.

La función printf

Printf es utilizado para enviar datos a la pantalla.

La función scanf

Scanf es utilizado para leer la entrada de datos por el teclado.

LIA. Jesús Antonio Toledo López

Page 18: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

PRIMER PROGRAMA

1 /* PROGRAMA QUE VISUALIZA EN PANTALLA UNA CADENA DE TEXTO */

2 #include <stdio.h>

3 void main ()

4 {

5 Printf(“\nCURSO DE PROGRAMACION EN C”);

6 }

LINEA 1

Las líneas que comienzan con los símbolos /* y terminan */ son comentarios para darle claridad a

la lectura de un programa en C.

LINEA 2

La directiva #include da instrucciones al compilador C para que añada el contenido de un archivo

de inclusión especifico al programa durante la compilación, la directiva #include, en este programa

significa añadir el contenido del archivo stdio.h que contiene una serie de instrucciones de entrada

– salida.

La mayoría de los programas en C requieren uno o más archivos de inclusión. Todos los archivos de

inclusión deben tener la extensión .h; por ejemplo stido.h, conio.h, string.h, etc.

LINEA 3

Es parte de todo programa C. main() representa una función o programa principal, que no

devuelve nada (void)

LINEA 4

La Llave Izquierda inicia el cuerpo de la función.

LINEA 5

La función printf despliega un mensajes de texto y el valor de una o más variables del programa en

la pantalla.

LIA. Jesús Antonio Toledo López

Page 19: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

TIPOS DE DATOS

Dentro de cada lenguaje se define un conjunto de tipos de datos que el usuario puede utilizar para

crear sus variables. Los tipos básicos de C permiten representar números enteros, números reales y

caracteres. Para hacer referencia a cada uno de estos tipos, se utiliza una palabra reservada del

lenguaje.

La siguiente tabla muestra los 5 tipos de datos básicos que existen en C.

TIPO UTILIZACIÓN

carácterSe representa mediante la palabra reservada char. Se utiliza para almacenar cualquier carácter. Ejemplo char nombre[20];

entero

Se representa mediante la palabra reservada int. Se utiliza para almacenar valores o cantidades enteras que no requieran parte fraccionaria. Ejemplo int numero;

real

Se representa mediante la palabra reservada float. Se utiliza cuando se necesita una parte fraccionaria. Ejemplo float altura = 1.84

Se representa mediante la palabra reservada double. Se utiliza cuando se necesita una parte fraccionaria. O cuando se van a utilizar números muy grandes. Ejemplo double al = 1,467866e+47

voidEs utilizado para funciones que no proporcionan ningún valor.

TABLA DE FORMATO DE DESPLIEGUE PARA TIPO DE DATOS

LIA. Jesús Antonio Toledo López

TIPO FORMATO

Char %sInt %dFloat %fDoublé %lf

Page 20: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

IDENTIFICADORES O VARIABLES

Una variable es un identificador que se utiliza para representar cierto tipo de información dentro de una determinada parte del programa.

Una variable es un identificador que se utiliza para representar un dato individual, es decir, una cantidad numérica o una constante de carácter.

REGLAS PARA NOMBRAR VARIABLES

1. Las variables deben empezar con una letra mayúscula o minúscula o con un símbolo de

subrayado

2. Después de la letra inicial o el símbolo de subrayado se puede poner cualquier número de

caracteres del siguiente conjunto: A-Z, a-z, _, y 0-9.

3. Se deben dar nombres a las variables no mayor de 32 caracteres

4. Las palabras reservadas no pueden ser usadas como nombres para las variables.

EJEMPLOS DE VARIABLES VALIDAS E INVÁLIDAS

Contar valido.Radio valido.Numero03 valido.Numero_general validoNOMBRE valido_suma valido, pero no recomendable2cliente invalido, porque comienza con un número.Float invalido, porque es una palabra reservada.Dirección#1 invalido, porque utiliza el carácter #

TABLA DE FORMATO DE DESPLIEGUE PARA TIPO DE DATOS

LIA. Jesús Antonio Toledo López

TIPO FORMATO

Char %sInt %dFloat %fDoublé %lf

Page 21: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

/*Programa suma*//*FECHA DE EDICION*//*Programa que proporciona la suma de 3 números enteros*//*Nombre del programador*/

#include<stdio.h>

void main(){

int n1, n2, n3, s;

printf("\n\nPROGRAMA QUE SUMA 3 NUMEROS ENTEROS");

printf("\n\n\nINGRESE EL NUMERO UNO: ");scanf("%d",&n1);printf("\nINGRESE EL NUMERO DOS: ");scanf("%d",&n2);printf("\n\nINGRESE EL NUMERO TRES: ");scanf("%d",&n3);

s=n1+n2+n3;

printf("\n\nLA SUMA DE LOS NUMEROS ES: %d",s);}

/*Programa cuadrado*//*FECHA DE EDICION*//*Programa que proporciona el cuadrado de un numero entero*//*Nombre del programador*/

#include<stdio.h>

void main(){

int n, c;

printf("\n\nPROGRAMA QUE PROPORCIONA EL CUADRADO DE UN NUMERO ENTERO");

printf("\n\n\nINGRESE X NUMERO: ");scanf("%d",&n1);c=n*n;printf("\n\n EL CUADRADO DEL NUMERO ES: %d”,c);

}

LIA. Jesús Antonio Toledo López

Page 22: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

/*Programa cubo*//*FECHA DE EDICION*//*Programa que proporciona el cubo de un numero entero*//*Nombre del programador*/

#include<stdio.h>

void main(){

int n, c;

printf("\n\nPROGRAMA QUE PROPORCIONA EL CUBO DE UN NUMERO ENTERO");

printf("\n\n\nINGRESE X NUMERO: ");scanf("%d",&n1);c=n*n*n;printf("\n\n EL CUBO DEL NUMERO ES: %d”,c);

}

/*Programa datos*//*FECHA DE EDICION*//*Programa que pide introducir datos tipo char*//*Nombre del programador*/

#include<stdio.h>#include<conio.h>

void main(){

char nombre[20], apellidos[30], carrera[30], semestre[15];

printf("\nFICHA DE INSCRIPCION");printf("\n*****************************");printf("\n\nINGRESA TU NOMBRE: ");scanf("%s",nombre);printf("\nINGRESA TUS APELLIDOS: ");scanf("%s",apellidos);printf("\nCARRERA QUE DESEAS: ");scanf("%s",carrera);printf("\nSEMESTRE DE INGRESO: ");scanf("%s",semestre);

printf("\n\n\nFICHA DE IMPRESION");printf("\n******************************");printf("\n\n%s",nombre);printf("\n%s",apellidos);printf("\n%s",carrera);printf("\n%s",semestre);printf("\n\n\n");getch();

}

LIA. Jesús Antonio Toledo López

Page 23: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

/*Programa promedio*/;

#include<stdio.h>#include<conio.h>

void main(){

float espa, mate, infor, ingl, fisi, prom;

printf("\n\n\nPROGRAMA QUE PROPORCIONA EL PROMEDIO DE 5 CALIFICACIONES");

printf("\n\n\nINGRESA CALIFICACION DE ESPANOL: ");scanf("%f",&espa);printf("\nINGRESA CALIFICACION DE MATEMATICAS: ");scanf("%f",&mate);printf("\nINGRESA CALIFICACION DE INGLES: ");scanf("%f",&ingl);printf("\nINGRESA CALIFICACION DE FISICA: ");scanf("%f",&fisi);

prom=((espa+mate+ingl+fisi)/4);

printf("\n\n\nEL PROMEDIO ES: %f",prom);printf("\n\n");

getch();}

LIA. Jesús Antonio Toledo López

Page 24: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

/*programa que convierte grados Fahrenheit a Celsius*//*valor de Fahrenheit – 32 por 5 entre 9*/#include<stdio.h>#include<conio.h>

void main(){

float celsius, fahrenheit;

printf("\n\nINGRESA LOS GRADOS FAHRENHEIT: "); scanf("%f",&fahrenheit);

celsius=(fahrenheit - 32) * 5 / 9;

printf("\n\n\nLOS GRADOS FAHRENHEIT A CELSIUS ES: %.2f",celsius);

getch();}

/*Programa que convierte grados celsius a grados fahrenheit*//*valor de celsius por 5 entre 9 mas 32*/#include<stdio.h>#include<conio.h>

void main(){

float celsius, fahrenheit;printf("\n\n\nPROGRAMA CONVERSION CELSIUS A FAHRENHEIT");printf("\n\n\nINGRESE LOS GRADOS CELSIUS: "); scanf("%f",&celsius);fahrenheit = (celsius * 9/5) + 32;printf("\n\nLOS GRADOS CELSIUS A FAHRENHEIT ES: %.2f",fahrenheit);printf("\n\n");getch();

}

LIA. Jesús Antonio Toledo López

Page 25: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

/*programa que proporciona las centenas, decenas y unidades de x cantidad*/#include<stdio.h>#include<conio.h>

void main(){

int n, m, c, d, u;printf("\n\nPROGRAMA QUE PROPORCIONA LAS UNIDADES, DECENAS, CENTENAS, Y

MILLAR");printf("\nINGRESE UNA CANTIDAD: ");scanf("%d",&n);

m = n/1000; /*divide la cantidad entre 1000*/c = n%1000/100; /*divide la cantidad entre 1000 y el residuo lo divide entre 100*/d = n % 100/10; /*divide la cantidad entre 100 y el residuo lo divide entre 10*/u = n%10; /*divide la cantidad entre 10 y toma el redsiduo*/

printf("\n\nMILLAR = %d",m);printf("\nCENTENAS = %d",c);printf("\nDECENAS = %d",d);printf("\nUNIDAD = %d",u);

getch();}

LIA. Jesús Antonio Toledo López

Page 26: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

/*Programa que convierte dólares a pesos*/#include<stdio.h>#include<conio.h>

void main(){

folat cantidad_dolares, total_pesos, valor_dolar;

printf("\n\nPROGRAMA QUE CONVIERTE DOLARES A PESOS");

printf("\nINGRESE LA CANTIDAD DE DOLARES A CONVERTIR: ");scanf("%f",&cantidad_dolares);

total_pesos = cantidad_dolares * valor_dolar;

printf("\n\NEL TOTAL DE DOLARES EN PESOS SON: %f",total_pesos);

getch();

}

LIA. Jesús Antonio Toledo López

Page 27: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

/*Programa que proporciona la longitud de la circunferencia y el área de un círculo para un radio introducido por el usuario*/#include<stdio.h>#include<conio.h>

void main(){

#define pi 3.14#define dos 2Float longitud, radio, área;Printf("\n\nPROGRAMA QUE PROPORCIONA LA LONGITUD DE LA CIRCUFERENCIA Y EL AREA

DE UN CIRCULO POR UN RADIO INTRODUCIDO POR EL USUARIO”);

Printf (“INGRESA EL VALOR DEL RADIO DEL CIRCULO: “);Sacnf(“%f”,&radio);

Longitud= dos*pi*radio;Area= pi*radio*radio;

Printf (“LA LONGITUD DE LA CIRCUNFERENCIA DEL CIRCULO ES: %f“,longitud);Printf (“EL AREA DEL CIRCULO ES: %f“,area);

Getch();}

LIA. Jesús Antonio Toledo López

Page 28: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

MANEJO DEL LENGUAJE C

RUTA DE ACCESO AL LENGUAJE C

INICIO – TODOS LOS PROGRAMAS – ACCESORIOS -

LIA. Jesús Antonio Toledo López

Page 29: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

CREAR UN ARCHIVO

LIA. Jesús Antonio Toledo López

Page 30: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

GUARADAR UN ARCHIVO

LIA. Jesús Antonio Toledo López

Page 31: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

COMPILANDO EL ARCHIVO

LIA. Jesús Antonio Toledo López

Page 32: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

LIA. Jesús Antonio Toledo López

Page 33: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

LIA. Jesús Antonio Toledo López

Page 34: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

ESTRUCTURAS DE CONTROL

Por lo general, las instrucciones dentro de un programa se ejecutan una tras otra, en el orden en el

cual se escribieron. A esto se le llama ejecución de control de secuencia. Varias instrucciones en C,

permiten al programador especificar que la siguiente instrucción a ejecutarse debe ser otra, en

lugar de la siguiente secuencia. A esto se le denomina transferencia de control.

C, tiene solo siete estructuras de control: una de secuencia, tres de selección (if, if/else y switch) y

tres tipos de repetición (while, for y do while)

Estructura secuencial.

Es aquella en la que una acción (instrucción) se ejecuta una tras otra en secuencia.

Estructuras de selección.

Estructura de selección simple if

Esta estructura ejecuta una determinada acción cuando se cumple una determinada condición.

- Si la ejecución es verdadera, entonces ejecuta la acción o acciones.

- Si la condición es falsa, de lo contrario se evita dicha acción.

Por ejemplo la siguiente instrucción en pseudocódigo

Si calificación es mayor o igual que 8

Imprime “aprobado”

Estructura de selección doble if/else (si – sino)

Esta estructura permite al programador especificar una acción a realizar cuando la acción es

verdadera, y una acción diferente a realizar cuando la acción es falsa. Por ejemplo la siguiente

instrucción en pseudocódigo:

Si calificación es mayor o igual que 8

Imprime “aprobado”

Sino

Imprime “reprobado”

LIA. Jesús Antonio Toledo López

Page 35: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

/*Programa NU4MAYOR (Programa que proporciona el mayor de 4 números)*/#include<stdio.h>void main(){

int n1, n2, n3, n4;

printf("PROGRAMA QUE PROPORCIONA EL MAYOR DE 4 NUMEROS");printf("\n\nINGRESE N1: "); scanf("%d",&n1);printf("\nINGRESE N2: "); scanf("%d",&n2);printf("\nINGRESE N3: "); scanf("%d",&n3);printf("\nINGRESE N4: "); scanf("%d",&n4);

if (n1>n2)if(n1>n3)

if(n1>n4)printf("\nEL MAYOR ES: %d",n1);

elseprintf("\nEL MAYOR ES; %d",n4);

elseif(n3>n4)

printf("\nEL MAYOR ES; %d",n3);else

printf("\nEL MAYOR ES; %d",n4);else

if(n2>n3)if(n2>n4)

printf("\nEL MAYOR ES; %d",n2);else

printf("\nEL MAYOR ES; %d",n4);else

if(n3>n4)printf("\nEL MAYOR ES; %d",n3);

elseprintf("\nEL MAYOR ES; %d",n4);

}

LIA. Jesús Antonio Toledo López

Page 36: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

/*Programa NU4MAYOR (Programa que proporciona el mayor y el menor de 4 números)*/

#include<stdio.h>void main(){

int n1, n2, n3, n4;

printf("PROGRAMA QUE PROPORCIONA EL MAYOR Y EL MENOR DE 4 NUMEROS");printf("\n\nINGRESE N1: "); scanf("%d",&n1);printf("\nINGRESE N2: "); scanf("%d",&n2);printf("\nINGRESE N3: "); scanf("%d",&n3);printf("\nINGRESE N4: "); scanf("%d",&n4);

if (n1>n2)if(n1>n3)

if(n1>n4)printf("\nEL MAYOR ES: %d",n1);

elseprintf("\nEL MAYOR ES; %d",n4);

elseif(n3>n4)

printf("\nEL MAYOR ES; %d",n3);else

printf("\nEL MAYOR ES; %d",n4);else

if(n2>n3)if(n2>n4)

printf("\nEL MAYOR ES; %d",n2);else

printf("\nEL MAYOR ES; %d",n4);else

if(n3>n4)printf("\nEL MAYOR ES; %d",n3);

elseprintf("\nEL MAYOR ES; %d",n4);

LIA. Jesús Antonio Toledo López

Page 37: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

if (n1<n2)if(n1<n3)

if(n1<n4)printf("\nEL MENOR ES: %d",n1);

elseprintf("\nEL MENOR ES; %d",n4);

elseif(n3<n4)

printf("\nEL MENOR ES; %d",n3);else

printf("\nEL MENOR ES; %d",n4);else

if(n2<n3)if(n2<n4)

printf("\nEL MENOR ES; %d",n2);else

printf("\nEL MENOR ES; %d",n4);else

if(n3<n4)printf("\nEL MENOR ES; %d",n3);

elseprintf("\nEL MENOR ES; %d",n4);

}

/*programa que pide introducir una clave para accesar al programa*/#include<stdio.h>#include<conio.h>

void main(){

int clave;printf("\n\nINGRESE SU CLAVE DE ACCESO: ");scanf("%d",&clave);

if (clave==5)printf("\n\nB I E N V E N I D O");

elseprintf("\n\nCLAVE INCORERECTA");

getch();}

LIA. Jesús Antonio Toledo López

Page 38: Manual de Tecnicas de Programacion Lenguaje c Semestre Febrero - Julio 2010

Manual de Manejo de Técnicas de Programación

Estructura CASE (según sea, caso de/case)

Cuando el número de posibles alternativas que hay que considerar es muy elevado, puede resultar muy tedioso y complejo escribir una estructura de if anidados. En este caso, los lenguaje de programación suelen ofrecer otra estructura condicional a la que se le denomina estructura CASE.

En el lenguaje C la estructura CASE toma la forma de la llamada sentencia SWITH. Su sintaxis es la siguienteSwitch (expresión){

Case valor1:Bloque-de-sentencias;

Case valor2:Bloque-de-sentencias;…..Case valorN:

Default:Bloque-de-sentencias;

}

Esta estructura se maneja para la toma de decisiones. Consiste en una serie de etiquetas case y un caso opcional llamado default.

LIA. Jesús Antonio Toledo López