martes, 28 de agosto de 2007

asd

#include
#include

/* en los 20 paraderos existentes en la Troncal “Alameda”, los cuáles fueron
secuencialmente numerados del 1 al 20. Los datos de esta encuesta se encuentran en un archivo llamado “tramos”,
el cual contiene un número indeterminado de registros, cada uno de los cuales corresponde a la respuesta de una
persona y que contiene 2 números enteros. El primero de ellos corresponde número del paradero donde la persona
se subió y el segundo corresponde a donde la persona se bajó.
desarrolle un programa en lenguaje C que con excepción de la función 1
permita llamar selectivamente las funciones siguientes.

1. Implemente la función cuenta. Esta función lee el archivo tramos y cuenta la cantidad de
personas que estuvieron en cada paradero (se debe considerar los paraderos de subida,
bajada y los de paso). Recomendación: Use un arreglo (vector) para almacenar la
contabilidad asociada a cada paradero.

2. Implemente la función numero. Esta función retorna la cantidad de personas que estuvieron
en el paradero “x” proporcionado como parámetro.

3. Implemente la función maximo. Esta función retorna la cantidad máxima de personas que
estuvieron un paradero, y el paradero asociado.*/

int maximo(int arr[20]);
int numero(int y);
int cuenta();

main(){
int opc, x, subida, bajada;
int paradero[20];
cuenta();


printf("Eliga una opcion:\n");
printf("1 = numero de personas en un paradero especifico\n");
printf("2 = numero maximo de personas que estuvieron en un paradero y el paradero asociado\n");
scanf("%d", &opc);

if (opc == 1){
printf("Ingrese el numero del paradero: ");
scanf("%d", &x);
numero(x);
}

else if (opc == 2){
maximo(paradero);
}

else {
printf("esa opcion no existe\n");
printf("intentalo nuevamente");
}
}

int maximo(int paradero[]){
int subida, bajada;
int i, x;

FILE *fp;


for (x=1; x<=20; x++) { /* Este tambien deberia ir en la funcion, se encarga de imprimir las personas en cada paradero (vector) */
paradero[x] = 0;
}

while ( !feof( fp ) ) {
fscanf(fp, "%d %d\n", &subida, &bajada);

while(subida<=bajada) {
paradero[subida] = paradero[subida]+1;
subida = subida +1;
}

while(subida>=bajada) {
paradero[subida] = paradero[subida]+1;
subida = subida -1;
}
}


printf("* %d persona(s) estuvieron en el paradero %d\n", paradero[x], x);
}


int numero(int x){
int cont;
int paradero[20];
int cantGente;

FILE *fp;
cont=0;
fp = fopen( "tramos.txt", "r" );

while ( !feof (fp)){
scanf("%d", paradero[x]);

if (paradero[x]=x){
cont= cont + 1;
}
}

printf("la cantidad de pasajeros en %d era: %d", x, cont);
return 0;
}

int cuenta (){
int subida, bajada; /* paradero inicial y final */
int paradero[20]; /* vector con el numero pasajeros en cada paradero */
int i, x; /* variables para los ciclos y/o vectores */

FILE *fp; /* fp = apuntador al archivo tramos.txt */

if ( ( fp = fopen( "tramos.txt", "r" ) ) == NULL ) {
printf("El archivo no pudo abrirse\n" ); /* Mensaje de error si el archivo no esta o no puede abrirse... saliendo del programa */
} /* fin de if */

else { /* lee el archivo con los 2 numeros enteros, que corresponden al paradero de subida y el otro al de bajada */
for (x=0; x<=20; x++) { /* Este "for" se encarga de inicializar el vector paradero en 0 */
paradero[x] = 0;
}

while ( !feof( fp ) ) { /* Este while se encarga de leer el archivo tramos.. hasta el fin de archivo */
fscanf(fp, "%d %d\n", &subida, &bajada); /* este se encarga de almacenar el primer numero entero en subida y el 2do en bajada */
/* desde aqui.... hay q pasar este pedazo de codigo a función */

while(subida<=bajada) { /* si el paradero de subida es mayor q el de bajada....*/
paradero[subida] = paradero[subida]+1; /* empieza aumentar hasta llegar al de bajada */
subida = subida +1; /* almacenando el numero de pasajeros correspondiente a cada paradero */
}

while(subida>=bajada) { /* hace lo mismo q el anterior pero con la condicion de q si el paradero de subida .... */
paradero[subida] = paradero[subida]+1; /* .... es mayor q el de bajada */
subida = subida -1;
}
/* Hasta aqui .... se encarga de pasar los datos del archivo tramos .txt
al vector q se llama paradero... el vector empieza en 1 y termina en 20
no utilice la posicion 0... por ende en cada posicion se guarda q estuvo 1 pasajero*/
} /* fin de while */
} /* fin de else */
return paradero[20], subida, bajada;

}

martes, 5 de junio de 2007

Programa Calculadora

Calculadora Básica(con swich)
#include
int main(){

int opcion,n1,n2,n3;

printf("1.-Suma\n2.-Resta\n3.-Multiplicación\n4.-Division\n5.-Salir\n");
printf("Ingrese Opcion:");
scanf("%d",&opcion);

switch(opcion){
case 1:
printf("Ingrese numero 1:");
scanf("%d",&n1);
printf("Ingrese numero 2:");
scanf("%d",&n2);
n3=n1+n2;

printf("%d+%d=%d\n",n1,n2,n3);
break;
}

switch(opcion){
case 2:
printf("Ingrese numero 1:");
scanf("%d",&n1);
printf("Ingrese numero 2:");
scanf("%d",&n2);
n3=n1-n2;

printf("%d-%d=%d\n",n1,n2,n3);
break;
}

switch(opcion){
case 3:
printf("Ingrese numero 1:");
scanf("%d",&n1);
printf("Ingrese numero 2:");
scanf("%d",&n2);
n3=n1*n2;

printf("%d*%d=%d\n",n1,n2,n3);
break;
}

switch(opcion){
case 4:
printf("Ingrese numero 1:");
scanf("%d",&n1);
printf("Ingrese numero 2:");
scanf("%d",&n2);
n3=n1/n2;

printf("%d/%d=%d\n",n1,n2,n3);
break;
}
}

Fibonacci

#include
int main(){

int a=0,b=1,c,numero,i;

printf("Ingrese Numero:");
scanf("%d",&numero);

if(numero==1){
printf("%d",a);
}

else if(numero==2){
printf("%d-%d",a,b);
}

else{
printf("%d-%d-",a,b);
for(i=3;i<=numero;i++){
c=a+b;
printf("%d\n",c);
a=b;
b=c;
}
}
}

N!

Programa que despliega el factorial por pantalla

#include
int main(){

int numero,i,total;

printf("Ingrese Numero:");
scanf("%d",&numero);
total=numero;

for(i=numero-1;i>0;i--){
total=total*i;
}

printf("el valor es %d\n",total);
}

jueves, 31 de mayo de 2007

Ejemplo: Saludo

#include

main(){

int a;
int op=1;

while(op!=0){
printf("\n ¿Cuantas veces quieres ser saludado?");
scanf("%d",&a);
if(a<5>0){
while(a!=0){
printf("\n Hola!");
a=a-1;
}
}
else{
printf("\n Muchos Holas!");
}
printf("\n ¿Quieres otra ronda de saludos?");
printf("\n Digite 1 para seguir o 0 para terminar");
scanf("%d",&op);
if(op!=0)
printf("\n otra ronda");
}
}

martes, 29 de mayo de 2007

Ejemplo 2

#include
int main(){
int sueldo;
int antig,i;
for(i=0;i<5;i++){
printf("\n Ingrese Su Sueldo:");
scanf("%d",&sueldo);
printf("\n Ingrese Su Antiguedad en la empresa:");
scanf("%d",&antig);
if(antig>9)
sueldo+=0.15*sueldo;
else if(antig>=5 && antig<=9)
sueldo+=0.08*sueldo;
else if(antig>=2 && antig<=4)
sueldo+=0.03*sueldo;
else
printf("\n Ud aun no puede ser bonificado");
printf("\n Sueldo: %d",sueldo);
}
}

Ejemplo 1

#include
int main(){
int n=2;
int sum=0;
int mayor;
while(n<30){
if(n%5==0){
printf("\n %d divisible",n);
sum+=n; //sum=sum+n;
mayor=n;
}
n=n+3;
}
printf("\n max:%d, suma:%d\n",mayor, sum);
}