Vous êtes sur la page 1sur 23

Ejercicios de Programacin II JAVA

http://netbeanspractico.blogspot.com/2013/04/funcion-matematica.html

EJEMPLOS JAVA NETBEANS

1. realizar un programa en java netbeans que pida un digito y lo valla sumando y muestre el resultado este operacin debe realizarse hasta que el usuario digite el numero 25 .
package ejercicio.pkg1; import javax.swing.JOptionPane; public class Ejercicio1 { public static void main(String[] args) { String a; int n,s=0,c=1; while (c==1){ a=JOptionPane.showInputDialog("digite un numero"; ) ; n=Integer.parseInt(a) ; s=s+n; if (n==25){ c=2; } JOptionPane.showMessageDialog(null,"la sumatoria es "+s,"",JOptionPane.PLAIN_MESSAGE) ; } } }

2. Realizar un programa en java netbeans que pida 3 digito al usuario,

en el cual debe encontrar el nmero del centro. Debe dejar de pedir nmero al usuario y realizar esta operacin hasta que la suma total de los tres digito sea igual a 15.
* To change this template, choose Tools | Templates * and open the template in the editor. package ejercicio.pkg1; import javax.swing.JOptionPane; * @author public class Ejercicio1 { @param args the command line arguments public static void main(String[] args) { String a,b,c; int n1,n2,n3,con=1,suma; while (con==1){ a=JOptionPane.showInputDialog("digite #1"; ) ; b=JOptionPane.showInputDialog("digite #2"; ) ; c=JOptionPane.showInputDialog("digite #3"; ) ; n1=Integer.parseInt(a) ; n2=Integer.parseInt(b) ; n3=Integer.parseInt(c) ; if (n1==n2||n2==n3||n3==n1) { JOptionPane.showMessageDialog(null,"Hay un numero repetido no se puede hallar el del centro","",JOptionPane.ERROR_MESSAGE) ; } else{ if(n1>n2&&n1<n3||n1<n2&&n1>n3){ JOptionPane.showMessageDialog(null,"el numero del centro es"+n1,"",JOptionPane.PLAIN_MESSAGE) ; } else if(n2>n1&&n2<n3||n2<n1&&n2>n3){ JOptionPane.showMessageDialog(null,"el numero del centro es"+n2,"",JOptionPane.PLAIN_MESSAGE); } else if(n3>n2&&n3<n1||n3<n2&&n3>n1){ JOptionPane.showMessageDialog(null,"el numero del centro es"+n3,"",JOptionPane.PLAIN_MESSAGE) ; } } suma=n1+n2+n3; if (suma==15){ con=2; }

} } }

3. Realizar un programa en java netbeans en el cual debe pedir 3 dgitos al usuario. Hallar el Mximo comn Divisor, este programa debe cerrarse hasta el M. C.D. sea mayor a 10.
package javaapplication13; import javax.swing.JOptionPane; @author Administrador public class JavaApplication13 { * @param args the command line arguments public static void main(String[] args) { String num1,num2,num3; int n1,n2,n3,con=0,a, mcd=0; while (con==0){ num1=JOptionPane.showInputDialog(" ingrese primer numero" ) ; num2=JOptionPane.showInputDialog(" ingrese el segundo numero" ) ; num3=JOptionPane.showInputDialog(" ingrese tercer numero" ) ; n1=Integer.parseInt(num1) ; n2=Integer.parseInt(num2) ; n3=Integer.parseInt(num3) ; if(n1<2&&n1<n3) { a=n1; } else if (n2<n1&&n2<n3){ a=n2; } else { a=n3; }

for(int x=1; x<=a; x++){ if(n1 % x == 0 & n2 % x == 0 & n3 % x == 0){

mcd=x; } } JOptionPane.showMessageDialog(null,"m.c.d es "+mcd) ; if(mcd>10){ con=1; } } } }

4. Realizar un programa en java netbeans en el cual pueda hallar el rea de: a/ rea al cuadrado b/ rea del triangulo c/rea rectngulo d/rea circulo salir
* To change this template, choose Tools | Templates * and open the template in the editor. package javaapplication5; import javax.swing.JOptionPane; * @author Administrador public class JavaApplication5 { * @param args the command line arguments public static void main(String[] args) { String num1,num2,num3;

int a,cont=1; float b,c,resp; do{ num1=JOptionPane.showInputDialog("ELEJIR ARIA A REALIZAR n1 area al cuadradon2 area del triangulon3 area del rectangulon4 area del circulon5 SALIR " ; ) ; a= Integer.parseInt(num1); switch (a){ case 1: num2=JOptionPane.showInputDialog("ingrese primer lado "; ) ; b= Float.parseFloat(num2) ; resp=b*b; JOptionPane.showMessageDialog(null,"area del cuadrado "+ resp,"Resultado",JOptionPane.PLAIN_MESSAGE);break; case 2: num2=JOptionPane.showInputDialog("ingrese base"; ) ; b= Float.parseFloat(num2) ; num3=JOptionPane.showInputDialog("ingrese Altura"; ) ; c= Float.parseFloat(num3) ; resp=(b*c)/2 ; JOptionPane.showMessageDialog(null,"area del Triangulo "+ resp,"Resultado",JOptionPane.PLAIN_MESSAGE) ;break; case 3: num2=JOptionPane.showInputDialog("ingrese base"; ) ; b= Float.parseFloat(num2) ; num3=JOptionPane.showInputDialog("ingrese Altura"; ) ; c= Float.parseFloat(num3) ; resp= b*c; JOptionPane.showMessageDialog(null,"area del Rectangulo "+ resp,"Resultado",JOptionPane.PLAIN_MESSAGE) ;break; case 4: num2=JOptionPane.showInputDialog("ingrese Radio"; ) ; b= Float.parseFloat(num2) ;

resp = (float) Math.PI * (float) Math.pow(b,2) ; JOptionPane.showMessageDialog(null,"area del Circulo "+ resp,"Resultado",JOptionPane.PLAIN_MESSAGE);break; case 5: cont = cont + 1;

JOptionPane.showMessageDialog(null,"salir ","salir",JOptionPane.PLAIN_MESSAGE) ;break;

default: JOptionPane.showMessageDialog(null,"Numero no Valido ","ERROR",JOptionPane.ERROR_MESSAGE) ; } } while(cont==1) ; } }

5. Realizar un programa en netbeans el cual el programa de dos numero cualquiera, diga cual es el mayor y cual es el menor de los dgitos dado por el programa a lazar, la suma total de eso dos dgitos , a^b , raz cuadrada de la suma de los dos dgitos , este programa debe cerrarse hasta que el resultado de la raz sea mayor a 4.
package ejerciciosenclase; import javax.swing.JOptionPane; public class Ejerciciosenclase { public static void main(String[] args) { //comienzan los codigos int x=0, n1=0, n2=0, res=0, res1, res2=0, p=0, p1=0; while(x==0){ n1= (int) Math.ceil(Math.random() * 20); //aqui se le da valor random a la variable n2= (int) Math.ceil(Math.random() * 20); //aqui se le da valor random a la variable p= (int) Math.min(n1, n2) ; //aqui encuentro el nmero menor p1= (int) Math.max(n1, n2) ; //aqui encuentro el nmero mayor JOptionPane.showMessageDialog(null,"Primer random = "+n1) ; //aqui se muestran los resultados obtenidos JOptionPane.showMessageDialog(null,"Segundo random = "+n2) ;

JOptionPane.showMessageDialog(null,"Mayor = "+p1) ; JOptionPane.showMessageDialog(null,"Menor = "+p) ; res=n1+n2;//aqui se ase la suma de los nmeros random res1= (int) Math.sqrt(res);//aqui se saca la raiz cuadrada de la suma de los numeros random res2= (int) Math.pow(n1, n2);//aqui se hace el numero elevado JOptionPane.showMessageDialog(null,"Raiz cuadrada de "+res+" es = "+res1) ;//aqui se muestran los resultados obtenidos JOptionPane.showMessageDialog(null,"Nmero elevado = "+res2) ; if(res1>4){ //aqui se hace la toma de desiciones para cerrar el programa x=1; JOptionPane.showMessageDialog(null,"Programa se va a cerrar"; ) ; } } } }

C++
Crear un programa en C que lea dos nmeros y que escriba el mayor de los dos. #include <stdio.h> int main(){ double x,y; printf("Escribe el primer nmero"); scanf("%lf",&x); printf("Escribe el segundo nmero"); scanf("%lf",&y); if(x>y) printf("El mayor es %f",x); else if(y>x) printf("El mayor es %f",y); else printf("Son iguales"); } Crear un programa en C que lea un nmero e indique si es par o no #include <stdio.h> int main(){ int x; printf("Escribe el nmero (sin decimales"); scanf("%i",&x); if(x%2==0) printf("Es par"); else printf("Es impar"); } Leer tres nmeros y escribir el mayor de los tres #include <stdio.h> int main(){ double x,y,z; //Lectura de datos printf("Escribe el primer nmero"); scanf("%lf",&x);

printf("Escribe el segundo nmero"); scanf("%lf",&y); printf("Escribe el tercer nmero"); scanf("%lf",&z); if(x>y && x>z) { //El mayor es x if(y>z) printf("\t%lf\t%lf\t%lf", x, y, z); else printf("\t%lf\t%lf\t%lf", x, z, y); } else if (y>x && y>z) { //El mayor es y if (x>z) printf("\t%lf\t%lf\t%lf", y, x, z); else printf("\t%lf\t%lf\t%lf", y, z, x); } else { //El mayor es z if (x>y) printf("\t%lf\t%lf\t%lf", z, x, y); else printf("\t%lf\t%lf\t%lf", z, y, x); } } Escribir un programa en C que lea nmeros enteros indefinidamente hasta que llegue el nmero 0 #include <stdio.h> int main(){ int x; do{ scanf("%i",&x); }while(x!=0); } Escribir un programa C que lea exactamente 8 nmeros y luego escriba la suma de todos ellos #include <stdio.h> int main(){ int x; int suma=0; for(int i=1; i<=8; i++){ scanf("%i",&x); suma+=x; } printf ("Suma= %i",suma); } Modificar el programa anterior para que en lugar de leer 8 nmeros, se puedan leer tantos nmeros como se quiera hasta que llegue un cero. El resultado es la suma de todos los nmeros ledos. #include <stdio.h> int main(){ int x; int suma=0; do{

scanf("%i",&x); suma+=x; }while (x!=0); printf ("Suma= %i",suma); } Intentar escribir un programa en C que lea tres nmeros e indique el tipo de tringulo que forman (issceles, equilatero, escaleno). Comprobar que los nmeros realmente formen un tringulo, sino emitir el error. #include <stdio.h> int main(){ int x,y,z; printf ("Escribe el primer lado"); scanf("%i",&x); printf ("\nEscribe el segundo lado"); scanf("%i",&y); printf ("\nEscribe el tercer lado"); scanf("%i",&z); printf("\n\n\n"); //Saltar tres lneas /*Comprobacin de si es un tingulo, damos por hecho que los nmeros son positivos */ if ((x+y>z) && (x+z>y) && (y+z)>x){ if (x==y && x==z) printf ("Equiltero"); else if (x==y || x==z || y==z) printf ("Issceles"); else printf("Escaleno"); } else printf("Esos nmeros no forman un tringulo"); } Modificar el programa anterior para que se pueda repetir indefinidamente si el usuario lo desea (que el ordenador pregunte Quiere continuar? y la persona pueda responder S N) #include <stdio.h> int main(){ int x,y,z; char resp; do { printf ("Escribe el primer lado"); scanf("%i",&x); printf ("\nEscribe el segundo lado"); scanf("%i",&y); printf ("\nEscribe el tercer lado"); scanf("%i",&z); printf("\n\n\n"); //Saltar tres lneas /*Comprobacin de si es un tringulo,

damos por hecho que los nmeros son positivos */ if ((x+y>z) && (x+z>y) && (y+z)>x){ if (x==y && x==z) printf ("Equiltero"); else if (x==y || x==z || y==z) printf ("Issceles"); else printf("Escaleno"); } else printf("Esos nmeros no forman un tringulo"); printf("\nDesea continuar (S/N)?)"); scanf("%c",&resp); }while (resp!='N' && resp!='n'); } Escribir un programa que escriba todos los mltiplos de 3 del nmero 1 al 3000 #include <stdio.h> int main(){ for(int i;i<=1000;i+=3) printf("%i\t",i); } Programa que lea una serie de nmeros (leer hasta que llegue el cero por ejemplo) y que calcule su media aritmtica #include <stdio.h> int main(){ int i,suma=0,cont=0; do{ printf("\nNmero: "); scanf("%i",&i); suma+=i; if (i!=0) cont++; }while (i!=0); if(cont!=0) printf("\nMedia: %5.2f",(float)suma/cont); else printf("\nNo hubo nmeros"); } Programa que escriba todo el cdigo ASCII (el cdigo ASCII va de 0 a 255 y representa el nmero con el que los ordenadores almacenan los caracteres) #include <stdio.h> int main(){ for(int i=0;i<=255;i++){ printf("%c(%i)\t",i,(int)i); //Salto de lnea cada 5 smbolos if (i%10==5) printf("\n"); } } Programa que lea un nmero entero por teclado y que calcule su factorial #include <stdio.h> int main(){

int x; double fact=1; printf("Escriba el nmero: "); scanf("%i",&x); while(x>1) fact*=x--; printf("Factorial =%lf",fact); } Programa que lea una serie de nmeros por teclado e indique cul es el mayor #include <stdio.h> int main(){ int i,mayor=0; do{ printf("\nNmero: "); scanf("%i",&i); if (mayor<i) mayor=i; }while (i!=0); printf("\nEl mayor es %i",mayor); } Crear un programa que lea un nmero entero y a partir de l cree un cuadrado de asteriscos con ese tamao. Los asteriscos slo se vern en el borde del cuadrado, no en el interior#include <stdio.h> int main(){ int n,fila,col; printf("tamao del cuadrado: "); scanf("%d",&n); /*Primera fila*/ for(col=1;col<=n;col++){ printf("*"); } printf("\n"); /*Filas interiores*/ for(fila=2;fila<n;fila++){ printf("*"); for(col=2;col<n;col++){ printf(" "); } printf("*"); printf("\n"); } /* ltima fila*/ for(col=1;col<=n;col++){ printf("*"); }

} Crear un programa C que lea cantidades y precios y al final indique el total de la factura. Primero se pregunta: Introduzca la cantidad vendida tras lo cual el usuario introducir un nmero entero positivo. Despus se pregunta: Introduzca el precio que ser un nmero decimal positivo. La lectura termina cuando en la cantidad se introduzca un cero. Si es as se escribir el total. #include <stdio.h> int main(){ int n; double precio, total=0; do{ do{ printf("\nIntroduzca la cantidad vendida: "); scanf("%d",&n); if(n<0) printf("Cantidad no valida"); }while(n<0); if (n>0){ printf("Introduzca el precio: "); do{ scanf("%lf",&precio); if(precio<0) printf("Precio no valido"); else total+=n*precio; }while(precio<0); } }while(n!=0); printf("Total vendido = %.2f", total); } Crear un programa para calcular los salario semanal de unos empleados a los que se les paga 15 euros por hora si stas no superan las 35 horas. Cada hora por encima de 35 se considerar extra y se paga a 22 . El programa pide las horas del trabajador y devuelve el salario que se le debe pagar. Adems el programa debe preguntar si deseamos calcular otro salario, si es as el programa se vuelve a repetir #include <stdio.h> #include <conio.h> int main(){ char resp; const intJORNADA=35,PRECIO_NORMAL=12,PRECIO_EXTRA=22; int horas, salario; do{ printf("Horas trabajadas: "); scanf("%d",&horas);

if(horas<=35) salario=horas*PRECIO_NORMAL; elsesalario=JORNADA*PRECIO_NORMAL+(horas-JORNADA)*PRECIO_EXTRA; printf("Salario = %d euros\n\n", salario);

fflush(stdin); /* Para limpiar el buffer de teclado */ printf("Desea calcular otro salario (s/n)?\n"); scanf("%c",&resp); } while(resp!='S' && resp!='s'); } Escribir un programa en C que lea nmeros enteros indefinidamente hasta que llegue el nmero 0 #include <stdio.h> int main(){ int x; do{ scanf("%i",&x); }while(x!=0); } Crear el programa asteriscos4 en el que se introduce un nmero entero y se crea una pirmide de asteriscos. Por ejemplo si se introduce el 6, el resultado sera: * *** ***** ******* ********* *********** #include <stdio.h> int main(){ int n,fila,col; printf("tamao de la piramide: "); scanf("%d",&n); for(fila=1;fila<=n;fila++){ /* Espacios en blanco*/ for(col=1;col<=n-fila;col++){ printf(" "); } for(col=1;col<=2*fila-1;col++){ printf("*"); } printf("\n"); } } Modificar el ejercicio anterior para que aparezca un rombo. #include <stdio.h> int main(){ int n,fila,col; printf("tamao de la piramide: "); scanf("%d",&n);

for(fila=1;fila<=n;fila++){ /* Espacios en blanco*/ for(col=1;col<=n-fila;col++){ printf(" "); } for(col=1;col<=2*fila-1;col++){ printf("*"); } printf("\n"); } /* Escritura de la parte inferior */ for(fila=n-1;fila>=1;fila--){+ /* Espacios en blanco*/ for(col=1;col<=n-fila;col++){ printf(" "); } for(col=1;col<=2*fila-1;col++){ printf("*"); } printf("\n"); } } Crear un programa qu escriba dos columnas de nmeros, en la primera se colocan los nmeros del 1 al 100, en la segunda los nmeros del 100 al 1 #include <stdio.h> int main(){ int col1=1, col2=100; while(col1<=100){ printf("%d\t\%d\n",col1,col2); col1++; col2--; } } Crear un programa en C que lea un nmero entero y positivo y que escriba tres columnas. La primera cuenta desde uno hasta el nmero escrito contando de uno en uno; la segunda columna cuenta de dos en dos y la tercera de tres. #include <stdio.h> int main(){ int col1=1, col2=1,col3=1; int n; printf("Escriba el nmero: "); scanf("%d",&n); while(col1<=n){ printf("%d",col1); if(col2<=n) { printf("\t%d",col2); if(col3<=n){

printf("\t%d",col3); col3+=3; } col2+=2; } printf("\n"); col1++; } } Crear el programa tablaMultiplicar que escriba la tabla de multiplicar del nmero 1 al nmero 15 #include <stdio.h> int main(){ const int TAMANIO=15; int i,j; for(i=1;i<=15;i++){ for(j=1;j<=15;j++){ printf("%4d",i*j); } printf("\n"); } } Crear un programa que muestre un men como este: 1) Salir 2) Sumatorio 3) Factorial Tras mostrar el men, el programa debe leer un nmero del 1 al tres si se elige 1, el programa acaba. Si se elige 2 se calcula el sumatorio del nmero, si se elige 3 se calcula el factorial (en ambos casos el programa pedir escribir el nmero sobre el que se calcula el sumatorio o el factorial). Tras calcular el sumatorio o el factorial e indicar el resultado, el programa volver a mostrar el men y as sucesivamente. #include <stdio.h> #include <conio.h> int main(){ int seleccion; int n,aux; double res; do{ /* Mostrar el men*/ do{ printf("1 Salir\n2 Sumatorio\n"); printf("3 Factorial\n\nEscriba su opcion"); scanf("%d",&seleccion); }while(seleccion!=1 && seleccion!=2 && seleccion!=3); if(seleccion==2){/* Sumatorio */ printf("Escriba el numero sobre el que quiere el sumatorio"); scanf("%d",&n); res=0;

for(aux=n;aux>=1;aux--) res+=aux; printf("El sumatorio es: %.0lf\n"); printf("Pulse cualquier tecla para continuar\n\n\n",res); getch(); } else if(seleccion==3){ /* Factorial */ printf("Escriba el numero sobre el que quiere el factorial"); scanf("%d",&n); res=1; for(aux=n;aux>=1;aux--) res*=aux; printf("El sumatorio es: %.0lf\n"); printf("Pulse cualquier tecla para continuar\n\n\n",res); getch(); } }while(seleccion!=1); } Crear un programa que lea un nmero e indique su valor en la sucesin de Fibonacci (llamarle Fibonacci). Esta sucesin calcula su valor de la siguiente manera. Slo es vlido para nmeros positivos, si el nmero es un uno, la sucesin vale 1 si es dos, la sucesin vale 2. Para el resto la sucesin es la suma de la sucesin de los dos nmeros anteriores. Es decir, para 7 el valor sera lo que valga la sucesin de 6 ms la sucesin de cinco. #include <stdio.h> int main(){ int f1=1,f2=1;/*Valores anteriores*/ int n,cont; double res=1; /* Resultado final */ do{ printf("Escriba el nmero: "); scanf("%d",&n); if(n<=0) printf("Numero no valido\n"); }while(n<=0); for(cont=3;cont<=n;cont++){ res=f1+f2; f1=f2; f2=res; } printf("Resultado: %.0f",res); } Crear un programa que contenga una funcin llamada copiarArray ) que reciba dos arrays y el tamao de los mismos (deben de ser del mismo tamao) y que consiga copia en el segundo array el contenido del primero #include <conio.h> #include <stdio.h> void copiarArray(int a[], int b[], int tamanio); void escribirArray(int a[], int tamanio); int main(){

/* Comprobacin de la funcin*/ int uno[]={2,4,5,6,7,8,9,11}; int dos[8]; printf("Array uno:\n"); escribirArray(uno,8); copiarArray(uno,dos,8); printf("Array dos:\n"); escribirArray(dos,8); getch(); }

/* Escribe el contenido de un array de enteros por pantalla */ void escribirArray(int a[], int tamanio){ int i; for(i=0;i<tamanio;i++) printf("%d ",a[i]); printf("\n"); } /* Copia el contenido del array b en el array a. Se supone que ambos arrays son del mismo tamanio*/ void copiarArray(int a[], int b[], int tamanio){ int i; for(i=0;i<tamanio;i++){ b[i]=a[i]; } } rear un programa llamado paresImpares que cree un array de 100 nmeros aleatorios del 1 al 1000. Una vez creado, mostrar el contenido y despus organizarlo de forma que estn juntos los elementos pares y los impares. Despus, volver a mostrar el array #include <conio.h> #include <stdio.h> #include <stdlib.h> #define TAM 100 void escribirArray(int a[], int tamanio); int main(){ int a[TAM]; int par[TAM]={0}; int impar[TAM]={0}; int i,j; srand(time(NULL)); /*Relleno inicial del array a*/ for(i=0;i<TAM;i++){ a[i]=rand()%100+1; } /* Escritura del contenido del primer array*/

printf("Primer array:\n"); escribirArray(a,TAM); /* Grabacin de los pares y los impares en los otros arrays*/ for(i=0;i<TAM;i++){ if(a[i]%2==0) par[i]=a[i]; else impar[i]=a[i]; } /* Escritura del array par e impar*/ printf("\nPar:\n"); escribirArray(par,TAM); printf("\nImpar:\n"); escribirArray(impar,TAM); /* Mezcla de ambos arrays en el array a y escritura del resultado final*/ j=0;/*j es el ndice del array a. Slo se mueve cuando se insertan en l nmeros*/ /*recorrido del array par e impar e insercin de los nmeros pares que contenga (todos los que sean distintos de 0) se aade al array a desde la primera posicin del mismo*/ for(i=0;i<TAM;i++){ if(par[i]!=0) { a[j]=par[i]; j++; } } /*recorrido del array impar e insercin de los nmeros impares que contenga desde la posicin en la que qued j*/ for(i=0;i<TAM;i++){ if(impar[i]!=0) { a[j]=impar[i]; j++; } } /*Resultado final*/ printf("\resultado final:\n"); escribirArray(a,TAM); } /* fin main */ /* Escribe el contenido de un array de enteros por pantalla */ void escribirArray(int a[], int tamanio){ int i; for(i=0;i<tamanio;i++){ printf("%d ",a[i]); } printf("\n"); } Crear un programa llamado vendedores que cree un array de 18 X 10 indicando que poseemos una empresa de 18 vendedores cada uno de los cuales vende 10 productos.

El array almacena los ingresos obtenidos por cada vendedor en cada producto, de modo que un men permite almacenar los ingresos, revisar el total de cada vendedor y obtener los ingresos totales #include <conio.h> #include <stdio.h> #define N_VENDEDORES 18 #define N_PRODUCTOS 10 /* Funcin que muestra el men del programa y retorna el nmero de men elegido por el usuario */ int mostrarMenu(); /* Funcin que calcula el total de todas las ventas*/ double mostrarTotal(double v[][N_PRODUCTOS]); /* Funcin que calcula el total de ventas de un vendedor*/ double totalVendedor(double v[][N_PRODUCTOS], int nVendedor); int main(){ double ventas[N_VENDEDORES][N_PRODUCTOS]={0}; int resp=mostrarMenu(); int nvend, nprod; double cantidad; while(resp!=4){ switch(resp){ case 1: printf("Numero de vendedor:");scanf("%d",&nvend); printf("Numero de producto: ");scanf("%d",&nprod); printf("Cantidad ventida: ");scanf("%lf",&cantidad); ventas[nvend][nprod]=cantidad; break; case 2: printf("Numero de vendedor: ");scanf("%d",&nvend); printf("Ventas total del vendedor %d=%.2lf\n", nvend,totalVendedor(ventas,nvend)); break; case 3: printf("Total de ventas=%.2lf\n", mostrarTotal(ventas)); break; } resp=mostrarMenu(); } getch(); } int mostrarMenu(){ int resp; printf("\n\n"); printf("1) Aadir datos\n"); printf("2) Mostrar total de vendedor\n");

printf("3) Mostrar total de ventas\n"); printf("4) Salir\n"); scanf("%d",&resp); return resp; } double mostrarTotal(double v[][N_PRODUCTOS]){ double resp=0; int i,j; for(i=0;i<N_VENDEDORES;i++){ for(j=0;j<N_PRODUCTOS;j++){ resp+=v[i][j]; } } return resp; } double totalVendedor(double v[][N_PRODUCTOS], intnVendedor){ double resp=0; int i; for(i=0;i<N_PRODUCTOS;i++){ resp+=v[nVendedor][i]; } return resp; } Crear un programa que mediante un men admita reservar o cancelar asientos de un avin, as como mostrar qu asientos estn ocupados y libreas actualmente. El array tendr 25 filas y 4 columnas #include <conio.h> #include <stdio.h> #define N_FILAS 25 #define N_COLUMNAS 4 #define LIBRE 0 #define OCUPADO 1 /* Funcin que muestra el men del programa y retorna el nmero de men elegido por el usuario */ int mostrarMenu(); void reservarAsiento(int a[][N_COLUMNAS]); void cancelarAsiento(int a[][N_COLUMNAS]); void mostrarOcupacion(int a[][N_COLUMNAS]); int main(){ /* Los asientos inicialmente estn libres*/ int asiento[N_FILAS][N_COLUMNAS]={0}; int resp=mostrarMenu(); while(resp!=4){ switch(resp){

case 1: reservarAsiento(asiento); break; case 2: cancelarAsiento(asiento); break; case 3: mostrarOcupacion(asiento); break; } resp=mostrarMenu(); } getch(); } int mostrarMenu(){ int resp; printf("\n\n"); printf("1) Reservar Asiento\n"); printf("2) Cancelar Asiento\n"); printf("3) Mostrar Ocupacion\n"); printf("4) Salir\n"); scanf("%d",&resp); return resp; } void reservarAsiento(int a[][N_COLUMNAS]){ int fila, col; printf("Escriba la fila del asiento a reservar: ");scanf("%d",&fila); printf("Escriba la columna del asiento a reservar: ");scanf("%d",&col); if(a[fila][col]==OCUPADO) printf("Ese asiento ya est reservado\n"); else { a[fila][col]=OCUPADO; printf("Reserva realizada\n"); } } void cancelarAsiento(int a[][N_COLUMNAS]){ int fila, col; printf("Escriba la fila del asiento a cancelar: ");scanf("%d",&fila); printf("Escriba la columna del asiento a cancelar: ");scanf("%d",&col); if(a[fila][col]==LIBRE) printf("Ese asiento no est ocupado\n"); else { a[fila][col]=LIBRE; printf("Cancelacin realizada\n"); } }

void mostrarOcupacion(int a[][N_COLUMNAS]){ int i,j; for(i=0;i<N_FILAS;i++){ for(j=0;j<N_COLUMNAS;j++){ printf("fila %d, columna %d",i,j); if(a[i][j]==LIBRE)printf("Libre\n"); else printf("Ocupado\n"); } } } Crear un programa que cree un array con 1000 letras maysculas aleatorias y que cuenta cuntas veces aparece cada letra en el array #include <conio.h> #include <stdio.h> #include <stdlib.h> #define TAM 1000 void escribirArray(char a[], int tamanio); int main(){ char letra[TAM]; /* Array que contendr las letras de la A a la Z*/ char AaZ[26]; /* contadores*/ int i,j,cont; srand(time(NULL)); /* Relleno del array de letras */ for(i=65;i<=90;i++){ AaZ[i-65]=i; } /*Relleno inicial del array aleatorio*/ for(i=0;i<TAM;i++){ /*genera caracteres del ASCII 65 al 90, de la letra A a Z */ letra[i]=rand()%26+65; } /* Escritura del contenido del primer array*/ printf("Array inicial:\n"); escribirArray(letra,TAM); /* El bucle recorre el array que contiene las letras de la A a la Z y cuenta cada vez que aparece cada letra en el array de letras aleatorias*/ for(i=0;i<26;i++){ cont=0; for(j=0;j<TAM;j++){ if(AaZ[i]==letra[j]) cont++; } printf("La letra %c aparece %i veces\n",65+i,cont);

} getch(); } /* Escribe el contenido de un array de enteros por pantalla */ void escribirArray(char a[], int tamanio){ int i; for(i=0;i<tamanio;i++){ printf("%c ",a[i]); } printf("\n"); }

Vous aimerez peut-être aussi