sábado, 26 de octubre de 2013

Tema 10.- Vectores

Vectores en Lenguaje C

Los vectores son una forma de almacenar datos que permiten contener una serie de valores del mismo tipo, cada uno de los valores contenidos tiene un posición asociada que se usara para accederlos. Esta posición o indice sera siempre un numero entero positivo.

En C la cantidad de elementos que podrá contener un vector es fijo, y en principio se define cuando se declara el vector.

Ejemplos: 
Otro ejemplo sencillo calcular el promedio de los valores:


Matrices

Una matriz es una estructura de datos, o más técnicamente, un espacio de memoria que 
permite almacenar una colección de elementos, todos del mismo tipo. La diferencia con 
los arreglos está en que, en las matrices, los elementos no están organizados linealmente 
sino que su organización es bidimensional, es decir, en filas y columnas.

Esta figura representa un matriz de cuatro filas (numeradas verticalmente de 0 a 3) y seis 
columnas (numeradas horizontalmente de 0 a 5). En cada una de las 24 celdas o casillas 
se puede guardar un dato. La dimensión o tamaño de una matriz es el número filas por el 
número de columnas. Debe ser claro entonces que la figura anterior es la gráfica de una 
matriz de dimensión 4x6

La manera de declarar una matriz en C++ es similar a un vector:






No olvidar que tanto filas como columnas se enumeran a partir de 0. Para recorrer una matriz podemos usar igualmente un bucle. En este caso usando 2 for: 





sábado, 12 de octubre de 2013

Tema 9.- Parámetros de Funciones

Parámetros

Un parámetro en C++ es una variable que puede pasar su valor a un procedimiento desde el principal o desde otro procedimiento.

Existen ocasiones es que es necesario mandar al procedimiento ciertos valores para que los use en algún proceso.

Estos valores que se pasan del cuerpo principal del programa o de un procedimiento a otros procedimientos se llaman parámetros.

Entonces la declaración completa de un procedimiento es:

Void Nom_Proc (lista de parámetros)

{cuerpo de instrucciones; };

Donde lista de parámetros es una o mas variables separadas por coma, como el siguiente ejemplo.


Tema 8.- Funciones

Funciones

Una función es un conjunto de declaraciones, definiciones, expresiones y sentencias que realizan una tarea específica.

El formato general de una función en C es:




El especificador_de_tipo indica el tipo del valor que la función devolverá mediante el uso de return. El valor puede ser de cualquier tipo válido. Si no se específica un valor, entonces la computadora asume por defecto que la función devolverá un resultado entero. No se tienen siempre que incluir parámetros en una función. la lista de parámetros puede estar vacía. 

Las funciones terminan y regresan automáticamente al procedimiento que las llamó cuando se encuentra la última llave }, o bien, se puede forzar el regreso antes usando la sentencia return. Ademas del uso señalado la función return se usa para devolver un valor.


Tema 6.- Variables (Locales)

6.1 Variables Locales

Una variable local es aquella cuyo ámbito se restringe a la función que la ha declarado se dice entonces que la variable es local a esa función  Esto implica que esa variable solo va a poder ser manipulada en dicha sección  y no se podrá hacer referencia fuera de dicha sección  Cualquier variable que se defina dentro de las llaves del cuerpo de una función se interpreta como una variable local a esa función.



Es mucho mejor trabajar sin variables globales porque están siempre vivas durante la ejecución.


Tema 5.- Programas de NetBeans

Programa # 1

/*Programa que calcula el promedio de 3 números*/
#include<stdio.h>
main()
 {
  int A,B,C,D;
printf ("Digite un número");
scanf ("%d", &A);
printf ("Dame un numero");
scanf ("%d", &B);
printf ("Dame otro numero");
scanf ("%d", &C);
D= (A+B+C) /3;
printf ("El promedio es: %d", &D);
return 0;
}

Programa #2


/*Programa que decide si un numero es par o impar*/
#include<stdio.h>
main ()
{
int A;
printf ("Dame un numero");
scanf ("%d", &A);
if (A/2 = 0)
printf ("El numero es par");
else
printf ("El numero es impar");
return 0;
}

Programa #3

/*Programa que calcula la multiplicación de 2 números y despliega el resultado*/
#include<stdio.h>
main ()
{
int A,B,C;
printf ("Dame un numero");
scanf ("%d", &A);
printf ("Dame un numero");
scanf ("%d", &B);
C= A*B;
printf ("El resultado es: %d", C);
return 0;
}

Programa #4

/*Programa que calcula el área de un circulo*/
#include <stdio.h>
main ()
{
float r,a;
printf ("Valor de radio ");
scanf ("%f", &r);
a=(3.1416)*(r*r);
printf ("El área es: %f", a);
return 0;
}

Programa #5

/*Programa que convierte grados F a C*/
#include<stdio.h>
main ()
{
float F, C;
printf ("El valor de grados");
scanf ("%f", &C);
C= (F-32) * 5/9;
printf ("El resultado es: %f", C);
return 0;
}

Programa #6

/*Programa que calcula los días que una persona ha vivido*/
#include<stdio.h>
main ()
{
int D, e;
prinft ("Edad");
scanf ("%d", &e);
D=e*365;
printf ("Los días vividos son: %d", D);
return 0;
}

Programa #7

/*Programa que decide si un numero es positivo o negativo*/
#include<stdio.h>
main ()
{
int A;
printf ("Dame un numero");
scanf ("%d", &A);
if (A>=0)
printf ("El numero es positivo:");
else
printf ("El numero es negativo");
return 0;
}

Programa #8


/*Programa que da 2 números dados por el usuario y decide cual numero es mayor*/
#include<stdio.h>
main()
{
int A, B;
printf ("Dame un numero");
scanf ("%d", &A);
printf ("Dame un numero");
scanf ("%d", &B);
if (A>B)
printf ("El numero mayor es: %d", A);
else
printf ("El numero mayor es: %d", B);
return 0;
}

Programa #9

/*Programa que realiza 2 restas de números de el usuario (AB-BA) e indica cual de las restas es positiva*/
#include<stdio.h>
main ()
{
int A,B,C,D;
printf ("Dame un numero");
scanf ("%d", &A);
printf ("Dame un numero");
scanf ("%d", &B);
C= A-B;
D= B-A;
if (C>D)
    printf ("La resta positiva es: %d", C);
else
    printf ("La resta positiva es: %d", D);
return 0;
}

Programa #10

/*Programa que permite leer 3 valores numéricos y que decide cual de los 3 es el mayor*/
#include<stidio.h>
main ()
{
int A, B, C;
printf ("Valor en numero: ");
scanf ("d%", &A);
printf ("Valor en numero: ");
scanf ("d%", &B
printf ("Valor en numero: ");
scanf ("d%", &C;
if (A>B && A>C)
       printf ("El numero mayor es: %d", A);
else
    if (B>C && B>A)
    printf ("El numero mayor es: %d", B);
else
    printf ("El numero mayor es: %d", C);
return 0;
}

Programa #11

/*Programa que realiza las operaciones básicas en donde el usuario elige la operación deseada, mediante el siguiente menú:
1.- Suma
2.- Resta
3.- Multiplicación
4.- División
Elige la opción deseada*/

#include<stdio.h>
main ()
{
int op;
float A, B, T;
printf ("1.- Suma");
printf ("2.- Resta");
printf ("3.- Multiplicación");
printf ("4.- División");
printf ("Teclea la opción deseada: ");
scanf ("%d", &op);
printf ("Teclea un numero");
scanf ("%f", &A);
printf ("Teclea un numero");
scanf ("%d", &B);
switch (op)
case 1: T=A+B; break;
case 2: T= A-B; break;
case 3: T= A*B; break;
case 4: T= A/B; break;
default: printf ("Opcion invalida");
printf ("El resultado es: %f", T);
return 0;
}

Programa #12

/*Programa que despliega el siguiente  menú:
1.- Área de un cuadrado
2.- Área de un triángulo
3.- Área de un circulo
Elige la opción deseada*/

#include<stdio.h>
main ()
{
int op;
float  B, L, H, R, T;
printf ("1.- Área de un cuadrado");
printf ("2.- Área de un triángulo");
printf ("3.- Área de un circulo");
printf ("Teclea la opción deseada: ");
scanf ("%d", &op);
switch (op)
case 1: printf ("Valor de lado");
scanf ("%f", &L);
T= L*L; break;
case 2: printf (Teclea la base");
scanf ("%f", &B);
printf ("Teclea la altura");
scanf ("%f", &H);
T= B*H / 2; break;
case 3: printf ("Teclea el radio");
scanf ("%f", &R);
T= (3.1416) * (R*R); break;
default: printf ("Opcion invalida");
printf ("El resultado es: %f", T);
return 0;
}

Programa 13

/*Programa que despliega las siguientes básicas: 
1.- Suma 
2.- Resta 
3.- Multiplicación
4.- División
5.- Salir
Teclea la opción deseada*/

#include<stdio.h>
main()
{
int op;
float A,B,T; op=0;
while (op!=5){
printf ("1. Suma\n 2.- Resta\n 3.- Multiplicación\n 4.- División\n 5.- Salir\n Teclea la opción deseada");
scanf ("%d\n", op);
switch (op){
case 1: printf ("Teclea un numero\n");
scanf ("%f\n", &A);
printf ("Teclea un numero\n");
scanf ("%f\n", &B);
T=A+B; break;
case 2: printf ("Teclea un numero\n");
scanf ("%f\n", &A);
printf ("Teclea un numero\n");
scanf ("%f\n", &B);
T=A-B; break;
case 3: printf ("Teclea un numero\n");
scanf ("%f\n", &A);
printf ("Teclea un numero\n");
scanf ("%f\n", &B);
T=A*B; break;
case 4: printf ("Teclea un numero\n");
scanf ("%f\n", &A);
printf ("Teclea un numero\n");
scanf ("%f\n", &B);
T= A/B; break;
}
printf ("El resultado es: %f", T);
}
return 0;
}

Programa 14

/*Programa que imprime los días de la semana:
1.- Lunes
2.- Martes
3.- Miércoles
4.- Jueves
5.- Viernes*/

#include <stdio.h>
main()
{
int dia;
printf ("introduce el dia");
scanf ("%d", &dia);
{
case 1: printf ("Lunes"); break;
case 2 printf ("Martes"); break;
case 3: printf ("Miércoles"); break;
case 4: printf ("Jueves"); break;
case 5: printf ("Viernes"); break;
default: printf ("Opcion invalida");
}
return 0;
}

Programa 15

/*Programa que suma los primeros 10 números naturales*/
#include <stdio.h>
main ()
{
int A, i;
while (i<=10) {
A=A+i;
i=i+1;
}
printf ("El resultado es: %d", A);
return 0;
}

Programa 16

/*Que tabla de multiplicar deseas*/
#include <stdio.h>
mian ()
{
int tabla, num, res;
num=0;
printf ("Escribe la tabla que deseas saber:");
scanf("%d", &tabla);
while (num<=9)
{
num=num+1;
res= (tabla*num);
printf ("%d * %d= %d\n", tabla, num, res);

Programa 17

/*Uso de la sentencia Do..While*/
#include<stdio.h>
main()
{
int A,i;
do {
printf ("Teclea el valor: \n", A);
printf ("Teclea el valor: \n", i);
i=1; A= 0;
A= A=i;
i+i=1;
while (i<=10)
}
return 0;
}

Programa 18

/*Uso de la sentencia Do...While */
#include <stdio.h>
main ()
{
char selec;
do{
printf ("1.- Comenzar \n");
printf ("2.- Abrir \n");
printf ("3.- Grabar \n");
printf ("4.- Salir \n");
printf ("Elige una opción");
scanf ("%c", &selec);
switch (selec){
case '1' : printf ("opcion 1"); break;
case '2' : printf ("opcion 2"); break;
case '3' : printf ("opcion 3"); break;
}
}while (selec!='4);
return 0;
}

Programa 19

/*Cuantos productos deseas cobrar: n*/
#include <stdio.h>
main ()
{
int n, c;
float PP, PT;
printf ("Cuantos productos deseas cobrar:");
scanf ("%d", &n);
while (c<=n)
{
printf ("Teclea el precio");
scanf (%f", &PP);
c=c+i;
PT=PT+PP;
}
printf ("El resultado es: %f", &PT);
return 0;
}

Programa 20

/*Teclea el precio del producto*/
#include<stdio.h>
main ()
{
int PP, T;
char s, n, d='5'
while (d='5'){
printf ("Teclea el precio del producto");
scanf ("%d", &PP);
T=T+PP;
printf ("Desea otro producto");
d= getchar();
scanf ("%c", &d);
}
printf ("El resultado es: %d", T);
return 0:

Programa 21

/*Precio: 20, descuento: 40%, descuento en $: 8, precio final: 12*/
#include<stidio.h>
main()
{
float P,CD,PD,D,PT,T;
char d; d= 's'
while (d=='s') {
printf ("Teclea el precio del producto");
scanf (%f", &P);
printf ("Teclea el porciento del descuento");
scanf (%f", &PD);
D= PD/100;
CD=P*D;
PT= P-CD;
T=T+PT;
printf ("Desea agregar otro producto: s o n");
d- getchar ();
scanf ("%c", &d); }
printf ("El total es: %d", T);
return 0:
}

Programa 22

/*Ciclo For*/
#include <stdio.h>
main ()
{
int num, x, result;
printf ("Introduce un numero: ");
scanf ("%d", &num);
for (x=0l x<= 10; x++){
result=num*x;
printf ('\n %d por %d= %d\n", num, x, result);
}
}

Programa 23

/*Imprime en pantalla los primeros 100 números naturales*/
#include <stdio.h>
main ()
{
int a;
for (a=1; 1<=100; a++) {
printf ("%d\n", a);
}
return 0;
}

Programa 24

/* Capturar 10 números enteros y sumar los números positivos e imprimir el resultado*/
#include<stidio.h>
main ()
{
int x,n,r,l;
for (x=1; x<=10; x++); {
printf ("Teclea un numero");
scanf ("%d", &n);
if (n>=0)
r=r+n; 
}
printf ("La suma es: %d", l);
return 0:
}

Programa 25

/*Capturar 10 numeros enteros y sumar los numeros pares e imprimir el resultado*/
#include<stdio.h>
main ()
{
int x,n,r;
for (x+1; x<=10: x++)
{
printf ("Introduce un numero entero:");
scanf ("%d", &n);
if (n%2==0)
r=r=n; 
}
printf ("El resultado de la suma es: %d", r);
return 0;
}

Programa 26

/*Programa que captura calificaciones*/
#include<stdio.h>
main()
{
float P1,P2,P3,PROM;
char Nom[30], Mat[15]; char C='s';
while (C=='s');
printf ("Nombre del alumno:");
scanf ("%s", &Nom);
printf ("Materia:");
scanf ("%s", &Mat);
printf ("Calificacion Primer parcial");
scanf ("%f", &P1)
printf ("Calificacion Segundo parcial");
scanf ("%f", &P2)
printf ("Calificacion Tercero parcial");
scanf ("%f", &P3)
PROM=(P1+P2+P3)/3;
printf ("%f\n", PROM);
if (PROM>=6)
printf ("Aprobado");
else
printf ("Reprobado");
}
printf ("Desea introducir otra consulta: s o n");
scanf ("%c", &C);
C=getchar ();
return 0;
}

Programa 27

/*Programa de posición de números*/
#include<stdio.h>
main ()
{
int a[5], i, num;
for (i=0; i<5; i++) {
printf ("Teclea un numero: \n");
scanf ("%d", &num);
a[i]= num;
}
for (i=0; i<5; i++) {
printf ("a[%d]= %d\n", i, a[i]);
}
return 0;
}

Programa 28

/*Realizar un programa en lenguaje C que en un vector se posiciones 10 números dados por el usuario y posteriormente imprimir la:
-Suma
-El promedio */

#include<stdio.h>
main ()
{
int n[10], i, num, T;
float prom;
for (i=o;i<10; i++);
{
printf ("Teclea un numero: \n");
scanf ("%d", &num);
n[i]=num;
T= T+num;
prom=T/10;
}
for (i=o;i<10; i++);
printf ("n[%d]=%d\n\n", i,n[i]);
}
printf ("El resultado de la suma es: %d", T);
printf ("El promedio es: %f", prom);
return 0;
}

Programa 29

/*Realiza un programa en lenguaje C que permita leer 10 números, que los almacene en un vector, que sume los números pares y que imprima los números que se capturaron junto con la suma*/
#include<stdio.h>
main()
{

int n[10], i, num, T;
for (i=0;i<10;i++)
{
printf ("Teclea un numero:");
scanf (%d", &num);
n[i]= num;
if (num%2==0)
T=T+num;
}
for (i=0;i<10;i++)
{
printf ("n[%d]= %d\n\n", i,n[i]);
}
printf ("El resultado de la suma es: %d", T);
return 0;
}

Programa 30

/*Realizar un programa en lenguaje C en donde utilice una matriz para almacenar la siguiente información:
-Nombre del alumno
-Apellido Paterno
-Apellido Materno
-Dirección
-Teléfono
-Promedio

Preguntar si desea capturar otro alumno
-Imprimir la información */

#include<stdio.h>
main()
{
int k,x;
char Nom[10][30], AP[10][20],AM[10][20],D[10][100],T[10][15],PROM[10][2],C;
C='s'; k=0;
do {
printf ("Nombre del alumno:");
scanf ("%s", &Nom[k][0]);
printf ("Apellido Paterno:");
scanf ("%s", &AP[k][0]);
printf ("Apellido Materno:");
scanf ("%s", &AM[k][0]);
printf ("Dirección:");
scanf ("%s", &D[k][0]);
printf ("Teléfono:");
scanf ("%s", &T[k][0]);
printf ("Promedio:");
scanf ("%s", &PROM[k][0]);
printf ("Desea introducir otro alumno: s o n: ");
scanf ("%c", &C);
C=getchar ();
k ++; 
}
while (C=='s');
for (x=0; x<k; x++)
{
printf ("Nombre:%s\nApellido Paterno:%s\nApellido Materno:%s\nDireccion:%s\nTelefono:%s\nPromedio%s\n", Nom [x], AP[x], AM[x], D[x], T[x], PROM[x]);
printf ("\n");
}
return 0;
}