Códigos nuevos *Sentencias de control en VB6 / .NET 1. Uso de Do..While..Loop Dim tuNombre As String Do While tuNombre <>"Quitar" tuNombre=InputBox("Tu nombre (Quitar para salir): ","Aviso","") If tuNombre<>"Quitar" Then TextBox1.Text=tuNombre Loop 'otra forma Do tuNombre=InputBox("Tu nombre (Quitar para salir): ","Aviso","") If tuNombre<>"Quitar" Then TextBox1.Text=tuNombre Loop While tuNombre <>"Quitar" 2. Uso de estructuras 'en un módulo .bas Public Type IngeEconomica Dim Valor As Double Dim Tasa As Double Dim Periodo As Integer End Type 'también puede ser Public Public inge As IngeEconomica 'en un formulario Option Explicit ' esto se ocupa para definir variables o funciones 'esto puede estar dentro de un botón o dentro del Form principal With inge .Valor=CDbl(Text1.Text) .Tasa=CDbl(Text2.Text) .Periodo=CDbl(Text1.Text) End With 3. Uso de clases 'en un módulo clase llamado CIngenieria 'pueden ser Private o Public Public Valor As Double Public Tasa As Double Public Periodo As Integer 'métodos Set, Let y Get, se puede omitir Let Property Get nValor() As Double nValor=Valor End Property 'nota: tener en cuenta la síntaxis
Códigos nuevos
Property Let nValor(ByVal miValor As Double) Valor=miValor End Property Property Set nValor(ByVal miValor As Double) Valor=miValor End Property 'nota: Set y Let se parecen ' lo demás es lo mismo 'Ahora en un módulo .bas Public inge As CIngenieria 'En un Formulario, dentro de un botón o en el Form principal 'instancia de la clase Set inge=New CIngenieria With inge .Valor=CDbl(Text1.Text) .Tasa=CDbl(Text2.Text) .Periodo=CDbl(Text1.Text) End With 4. Uso de Combo Private Sub Combo1_Click() Select Case Combo1.ListIndex Case 0: 'acción 1 Case 1: 'acción 2 Case Else: 'ninguna de las anteriores End Select End Sub 5. Uso de List Private Sub List1_Click() Select Case List1.ListIndex Case 0: 'acción 1 Case 1: 'acción 2 Case Else: 'ninguna de las anteriores
Códigos nuevos End Select End Sub 6. Campos auto-tabulados en cajas de texto 'Asignar un límite a la propiedad MaxLength Private Sub Text1_Change() If Len(Text1.Text)=Text1.MaxLength Then SendKeys "{Tab}" End Sub 7. Hora y Fecha 'Se puede crear un control personalizado para compartirlo entre todo el proyecto Label1.Caption=Format(Now,"dd/mm/yy") Label2.Caption=Format(Now,"h:mm:ss") 8. Números pares e impares Dim i, resto As Integer 'i=Val(Text1.Text) 'i=Val(InputBox("Introduce número: ","Aviso","")) i=CDbl(Text1.Text) resto= i Mod 2 Select Case resto Case 0: Print "El número: ";i;" es par" Case Else: Print "El número: ";i;" es impar" End Select 9. Uso de TabStrip Private Sub TabStrip1_Click() Dim opcion As String opcion = TabStrip1.SelectedItem.Key Select Case opcion Case "Nuevo" respuesta = MsgBox("¿Desea insertar un nuevo registro?", vbYesNo + vbExclamation + vbDefaultButton2, "Aviso del sistema") If respuesta = vbYes Then Adodc1.Recordset.AddNew Else MsgBox "Operación anulada", vbCritical, "Aviso del sistema" End If Case "Cambiar" respuesta = MsgBox("¿Desea modificar registro?", vbYesNo + vbExclamation + vbDefaultButton2, "Aviso del sistema") If respuesta = vbYes Then
C贸digos nuevos Adodc1.Recordset.Update Else MsgBox "Operaci贸n anulada", vbCritical, "Aviso del sistema" End If Case "Borrar" respuesta = MsgBox("驴Desea borrar registro?", vbYesNo + vbExclamation + vbDefaultButton2, "Aviso del sistema") If respuesta = vbYes Then Adodc1.Recordset.Delete Else MsgBox "Operaci贸n anulada", vbCritical, "Aviso del sistema" End If End Select End Sub 10. Sencilla clase en VB 6.0 'Clase CNumeros Public NumX As Double Public NumY As Double Property Get mNumX() As Double mNumX=NumX End Property Property Let mNumX(ByVal nuevoValor As Double) mumX=nuevoValor End Property ... ... 'En un form Option Explicit Public miObjeto As New CNumeros Private Sub Command1_Click() Set miObjeto = New CNumeros With miObjeto 'aqui asigno valores a los miembros
Códigos nuevos .NumX = 2 .NumY = 3 'otra forma .NumX = Val(InputBox("Introduce valor de X:", "Aviso del programa")) .NumY = Val(InputBox("Introduce valor de Y:", "Aviso del programa")) 'aqui los métodos asignan y recuperan los valores de los miembros .mNumX = .NumX .mNumY = .NumY
Print "Número X="; .mNumX Print "Número Y="; .mNumY; vbCrLf End With End Sub Private Sub Form_Load() With Me .Caption = "Uso de clases en VB 6.0" End With End Sub 11. Otro ejemplo de clases más completo 'en una clase 'definir miembros Public NumX As Integer Public NumY As Integer 'definir métodos Property Get mNumX() As Double mNumX = NumX End Property Property Let mNumX(ByVal nuevoX As Double) NumX = nuevoX End Property Property Get mNumY() As Double
Códigos nuevos mNumY = NumY End Property Property Let mNumY(ByVal nuevoY As Double) 'también puede ser Set en vez de Let NumY = nuevoY End Property 'otros métodos Public Function Cuadrado(x) As Integer If x = 0 Then Cuadrado = 1 Else Cuadrado = x * 2 End If End Function 'en un form Option Explicit Public miObjeto As New CNumeros Private Sub Command1_Click() Set miObjeto = New CNumeros With miObjeto 'aqui asigno valores a los miembros .NumX = Val(InputBox("Introduce valor de X:", "Aviso del programa")) .NumY = Val(InputBox("Introduce valor de Y:", "Aviso del programa")) 'aqui los métodos asignan y recuperan los valores de los miembros .mNumX = .NumX .mNumY = .NumY Print " [Valores]"; vbCrLf Print "--------------------------" Print "Número X="; .mNumX Print "Número Y="; .mNumY; vbCrLf Print "Número X al cuadrado"; .Cuadrado(.mNumX) Print "Número Y al cuadrado"; .Cuadrado(.mNumY); vbCrLf Print "--------------------------"; vbCrLf End With End Sub Private Sub Form_Load() With Me .Caption = "Uso de clases en VB 6.0" End With End Sub
Códigos nuevos
Programación Shell 1. Mensaje #!/bin/bash #Autor: carraro 2011 clear echo "*******************************************" echo "Bienvenido a la programación Shell en Linux" echo "*******************************************" echo "" echo "Introduce tu nombre: " read nombre echo "Hola ${nombre}, haz iniciado tu primer etapa en Linux Shell"
2. Opera básica 1 #!/bin/bash #variables clear a=9 b=5 echo "**********************************" echo "****** [Operaciones básicas] *****" echo "**********************************" echo "" #suma echo "La suma de ${a} + ${b} es:$[$a+$b]" #resta echo "La resta de ${a} - ${b} es:$[$a-$b]" #producto echo "el producto de ${a} * ${b} es:$[$a*$b]" #division echo "La división de ${a} / ${b} es:$[$a/$b]" 3. Opera básica 2 #!/bin/bash clear function Mensaje(){ echo "*****************************" echo "*** [Operaciones básicas] ***" echo "*****************************" echo "" } Mensaje echo "Introduce un número:" read num1 echo "Introduce otro número:" read num2 #aqui van las operaciones básicas
Códigos nuevos echo "La suma de ${num1} + ${num2} es: $[$num1+$num2]" echo "La resta de ${num1} - ${num2} es: $[$num1-$num2]" echo "El producto de ${num1} * ${num2} es: $[$num1*$num2]" if [ $num1 -lt $num2 ]; then echo "${num1} es menor a ${num2}" echo "La división de ${num2} / ${num1} es: $[$num2/$num1]" else echo "${num2} es menor a ${num1}" echo "La división de ${num1} / ${num2} es: $[$num1/$num2]" fi 4. Uso de funciones #!/bin/bash numero=3 function Doble(){ echo "...en proceso" let numero=numero=numero*2 } numero=7 echo "El número vale ${numero}" #llamar a la función Doble echo "Ahora el número vale ${numero}" 5. Números pares e impares #!/bin/bash clear echo "*****************************" echo "**[Números pares e impares]**" echo "*****************************" echo "" read -p "Introduce número:" numero let resto=numero%2 if [$resto -eq 0]; then echo "El número ${numero} es par" else echo "El número ${numero} es impar" fi 6. Zodiaco chino #!/bin/bash clear echo "*****************************" echo "***** [HOROSCOPO CHINO] *****" echo "*****************************" echo ""
C贸digos nuevos read -p "Introduce a帽o: " anyo let resto=anyo%12 #selector case $resto in 0)HOROS="MONO" ;; 1)HOROS="GALLO" ;; 2)HOROS="PERRO" ;; 3)HOROS="CERDO" ;; 4)HOROS="RATA" ;; 5)HOROS="BUEY" ;; 6)HOROS="TIGRE" ;; 7)HOROS="CONEJO" ;; 8)HOROS="DRAGON" ;; 9)HOROS="SERPIENTE" ;; 10)HOROS="CABALLO" ;; 11)HOROS="CABRA" ;; *) echo "Error" esac echo "Si naciste en ${anyo} te corresponde el signo del " $HOROS
7. Uso de While #!/bin/bash clear echo "******************************" echo "******** [While] **********" echo "*****************************" echo "" read -p "Introduce 0 para salir " numero while [ $numero -ne 0 ]; do echo "El doble de ${numero} es: " $(($numero*2)) read -p "Introduce 0 para salir " numero done 8. Otra funci贸n #!/bin/bash clear echo "Nombre del script $0" echo "****************************" echo "***** Funci贸n en Linux *****" echo "****************************" function MayorEdad(){ if [ $1 -ge 18 ]; then echo "Si es mayor de edad" else
Códigos nuevos echo "No es mayor de edad" fi
} read -p "Tu edad: " edad #invocar función MayorEdad $edad 9. Menú simple #!/bin/bash #CARRARO 2011 clear echo "*************************" echo "***** [Menú simple] *****" echo "*************************" echo "" echo "1. Ver calendario 2. Ver hora 3. Ver fecha 4. Salir" echo "Introduce tu opción: " read opcion case $opcion in 1) cal ;; 2) time ;; 3) date ;; 4) clear ;; *) echo "Error" esac 10. Uso de for #!/bin/bash clear i=1 echo "*************************" echo "***** [Uso de for] ******" echo "*************************" echo "" read -p "Introduce un número: " numero for i in $numero ; do echo "Hola no. ${i}" done 11. Otro menú #!/bin/bash #autor: CARRARO 2011 clear echo "********************************" echo "**** [ Menú del programa] *****" echo "********************************"
Códigos nuevos echo "" read -p "1. Info usuario 2. Abrir calculadora 3. Ver calendario 4. Salir" opcion case $opcion in 1) whoami; logname; finger; w; who ;; 2) bc ;; 3) cal ;; 4) clear ;; *) echo "Error en opción" esac 12. Inge económica #!/bin/bash #Autor: CARRARO 2011 clear echo "*******************************" echo " [Ingeniería económica] " echo "*******************************" echo "" read -p "Introduce valor del préstamo: " valor read -p "Introduce tasa de interés: " tasa read -p "Introduce periodo de pago: " periodo echo "" echo "1. Valor presente 2. Valor futuro 3. Salir" read -p "Introduce opción: " opcion case $opcion in 1) res=[$valor*(1+$tasa/100)**$periodo]; echo "Resultado ${res}" ;; 2) res=[$valor*(1+$tasa/100)**$periodo]; echo "Resultado ${res}" ;; 3) clear ;; *) echo "Error" esac Programando en Python 1. Uso de for var in range() vector=[1,2,3] i=0 for i in range(len(vector)): print i," al doble es: ",i*2 2. Uso de menús en Python #!/bin/bash #Autor CARRARO 2011 def Menu(): opcion=0 print "************************************************" print " MENU " print "1. Factorial de un numero" print "2. Uso de funciones matematicas" print "3. Vectores"
CĂłdigos nuevos print "4. Uso de diccionarios" print "5. Como usar el programita (uso de ficheros)" print "************************************************" while opcion<=0 or opcion>5: opcion=int(raw_input('Introduce tu opcion: ')) return opcion #main opc=Menu() if opc==1: print "Uno" elif opc==2: print "Dos" elif opc==3: print "Tres" elif opc==4: print "Cuatro" elif opc==5: print "Cinco" else: print "Error" 3. Importar archivo from programaPython import MĂŠtodo Ejemplo. from prog6 import FuncionSeno form prog7 import * 4. NĂşmeros pares e impares #!/bin/bash i, resto=0, 0 max=99 print "Inicia el bucle" while i<max: i=i+1 resto=i%2 if resto==0: print i," es par" else: print i," es impar" print "Termina el bucle"
CĂłdigos nuevos
5. NĂşmeros pares e impares, el usuario coloca el lĂmite #!/bin/bash resto, i=0, 0 max=0 print "Inicia bucle" while max<=0: max=int(raw_input('Limite:')) while i<max: i=i+1 resto=i%2 if resto==0: print i," es par" else: print i," es impar" print "Termina bucle" 6. Fizz-Buzz mod3, mod5=0, 0 i,max=0, 99 j=0 print "Inicia primer bucle" while i<max: i=i+1 mod3=i%3 if mod3==0: print i," Fizz" else: print i," Buzz" print "Termina primer bucle" print "Inicia segundo bucle" while j<max: j=j+1 if mod5==0: print j," Fizz" else: print j," Buzz" print "Termina segundo bucle" 7. Uso de centinelas cont=0 centinela=-1 suma=0 nota=int(raw_input('Introduce nota (-1 para salir):')) while nota!=centinela: cont=cont+1
C贸digos nuevos nota=int(raw_input('Introduce nota (-1 para salir):')) suma=suma+nota print "Suma parcial: ",suma," no. ",cont print "Suma total: ",suma
C贸digos PHP 1. Generar un pdf formulario1.html <form method="post" action="generarPDF.php"> Tu nombre <input type="text" name="nombre" value=""/> <input type="submit" value="Generar" name="Generar" /> </form> generarPDF.php <?php //recogemos el nombre $nom=$_REQUEST['nombre']; require("fpdf/fpdf.php"); $objetoPDF=new FPDF(); $cadena="Hola $nom"; $objetoPDF->AddPage(); $objetoPDF->SetFont("Arial","B",16); $objetoPDF->Cell(190,10,$cadena); $objetoPDF->Output(); ?>
Cรณdigos nuevos
Cรณdigos C++ 1. Puntero a funciรณn, valor futuro #include "iostream.h" #include "stdio.h" #include "stdlib.h" #include "math.h" float valorFuturo(float valor,float tasa,int periodo); float valorFuturo(float valor,float tasa,int periodo){ return valor*pow(1+tasa/100,periodo); }
void main(){ float valor,tasa; int periodo; int i,n; //puntero a funciรณn float(*miFuncion[1])(float,float,int)={valorFuturo}; //float(*miFuncion[1])(float,float,int); //miFuncion[0]=valorFuturo; cout<<"\nValor futuro en C++ con punteros"<<endl; periodo=12; valor=2500; tasa=3; printf("Valor= %f Tasa= %f Periodo= %d\n",valor,tasa,periodo); for(i=0;i<1;i++) for(n=0;n<=periodo;n++) printf("Periodo= %d -->Valor futuro= %f\n",n,(*miFuncion[i]) (valor,tasa,n)); } 2. Otro ejemplo de puntero a funciรณn #include "stdio.h" #include "ctype.h" #include "iostream.h" int Factorial(int x);
C贸digos nuevos
void main(){ int n=0; int i=0;//puntero a funci贸n int (*miFuncion[])(int)={Factorial};
cout<<"*****************************"<<endl; cout<<"******** FACTORIAL *******"<<endl; cout<<"*****************************"<<endl; cout<<"\nIntroduce numero: "<<endl; cin>>n; printf("\nEl factorial de %d es % d\n",n,miFuncion[i](n));
} int Factorial(int x){ if(x==0) return 1; else
return x*Factorial(x-1);
}
3. Tercer ejemplo #include "stdio.h" #include "ctype.h" #include "iostream.h" int Factorial(int x);
void main(){ int n=0,x;
C贸digos nuevos //puntero a funci贸n int (*miFuncion[1])(int)={Factorial};
cout<<"*****************************"<<endl; cout<<"******** FACTORIAL *******"<<endl; cout<<"*****************************"<<endl; for(x=0;x<1;x++) for(n=0;n<=10;n++) printf("\nEl factorial de %d es % d\n",n,miFuncion[x] (n)); } int Factorial(int x){ if(x==0) return 1; else return x*Factorial(x-1); } 4. Funci贸n seno #include "math.h" #include "stdio.h" #include "iostream.h" float Seno(float x); float Seno(float x){ return sin(x)+x; } void main(){ float x; int i,j; //puntero a funci贸n float(*miFuncion[1])(float); miFuncion[0]=Seno;
cout<<"\nFuncion seno"<<endl; //obligo a poner valor mayor a cero do{ cout<<"\nIntroduce un numero mayor a cero:"<<endl;
C贸digos nuevos cin>>x; }while(x<=0);
x=(int)x;//convertir valor float a int for(i=0;i<1;i++){ for(j=0;j<=x;j++){ printf("Numero= %d Seno= %f\n",j,(*miFuncion[i])(j)); } }
} 5. Arreglo sin funci贸n #include "stdio.h" #include "math.h" #include "iostream.h" void main(){ int numeros[]={100,6,45,3,12,0,76,4,10,3}; //arreglo de tama帽o 10 verArreglo(numeros);//no se necesita el corchete int i=0; cout<<"\nArreglos"<<endl; for(i=0;i<10;i++) cout<<"Valor "<<numeros[i]<<" posicion "<<i<<endl; } 6. Arreglo con funci贸n #include "stdio.h" #include "math.h" #include "iostream.h" int verArreglo(int vector[]); int verArreglo(int vector[]){ int i=0; cout<<"\nArreglos"<<endl; for(i=0;i<10;i++) cout<<"Valor "<<vector[i]<<" posicion "<<i<<endl; return i; } void main(){
C贸digos nuevos int numeros[]={100,6,45,3,12,0,76,4,10,3}; //arreglo de tama帽o 10 verArreglo(numeros);//no se necesita el corchete }
7. Burbuja #include "math.h" #include "stdio.h" #include "iostream.h" #define TAM 10 int verArreglo(int arreglo[]); int burbuja(int arreglo[]); int verArreglo(int arreglo[]){ int i=0; for(i=0;i<TAM;i++) cout<<"Posicion no. "<<i<<" Valor "<<arreglo[i]<<endl; return i; }
int burbuja(int arreglo[]){ int i,j; int aux; for(i=0;i<TAM-1;i++) for(j=0;j<TAM-1;j++) if(arreglo[j]>arreglo[j+1]){ aux=arreglo[j]; arreglo[j]=arreglo[j+1]; arreglo[j+1]=aux; return i;
}
} void main(){ int n; int vector[TAM]; cout<<"\tArreglos en C++"<<endl; for(n=0;n<TAM;n++){
C贸digos nuevos
}
cout<<"Introduce valor no."<<n<<endl; cin>>vector[n];
//ver arreglo cout<<"\tVer arreglo tal como fueron introducidos los valores"<<endl; verArreglo(vector);//no son necesarios los corchetes //ordenar arreglo burbuja(vector); //ver arreglo cout<<"\tVer arreglo ordenado por el metodo de la burbuja"<<endl; verArreglo(vector);//no son necesarios los corchetes } 8. Ver abecedario #include "ctype.h" #include "string.h" #include "iostream.h" #include "stdio.h"
char verCadena(char cadena); char verCadena(char cadena){ for(cadena='a';cadena<='z';cadena++) cout<<"Hola "<<cadena<<endl; return cadena; } void main(){ char abc='a'; verCadena(abc); } 8. Uso de clases #include "stdio.h" #include "math.h" #include "ctype.h" #include "stdlib.h" #include "iostream.h" #define TAM 50
C贸digos nuevos class Persona{ public: char Nombre[TAM]; int Edad; double Talla; char Color[TAM]; public: void asignaNombre(char miNombre[TAM]); void asignaEdad(int miEdad); void asignaTalla(double miTalla); void asignaColor(char miColor[TAM]); char obtenerNombre(); int obtenerEdad(); double obtenerTalla(); char obtenerColor(); }; void Persona::asignaNombre(char miNombre[]){ Nombre[TAM]=miNombre[TAM]; } void Persona::asignaEdad(int miEdad){ Edad=miEdad; } void Persona::asignaTalla(double miTalla){ Talla=miTalla; } void Persona::asignaColor(char miColor []){ Color[TAM]=miColor[TAM]; } char Persona::obtenerNombre(){ return Nombre[TAM]; } int Persona::obtenerEdad(){ return Edad; } double Persona::obtenerTalla(){
C贸digos nuevos return Talla; } char Persona::obtenerColor(){ return Color[TAM]; } void main(){ Persona miPersona;//instancia de la clase char Nombre[TAM]; char Color[TAM] ; int Edad; double Talla; int i,j; cout<<"\tUso de clases en C++"<<endl; cout<<"\tIntroduce tus datos"<<endl; for(i=0;i<1;i++){ cout<<"\nNombre: "<<endl; //cin>>Nombre[TAM]; gets(Nombre); cout<<"\nEdad: "<<endl; cin>>Edad; cout<<"\nTalla: "<<endl; cin>>Talla; cout<<"\nColor: "<<endl; //cin>>Color[TAM]; gets(Color); } miPersona.asignaNombre(Nombre); miPersona.asignaEdad(Edad); miPersona.asignaTalla(Talla); miPersona.asignaColor(Color); cout<<"\tDatos leidos"<<endl; for(j=0;j<1;j++){ cout<<"\nNombre: "<<endl; //puts(miPersona.obtenerNombre()); puts(Nombre); cout<<"\nEdad: "<<miPersona.obtenerEdad()<<endl; cout<<"\nTalla: "<<miPersona.obtenerTalla()<<endl; cout<<"\nColor: "<<endl; //puts(miPersona.obtenerColor());
C贸digos nuevos puts(Color); }
} 9. Abecedario al reves #include "ctype.h" #include "string.h" #include "iostream.h" #include "stdio.h"
char verCadena(char letra); char verInversa(char letra); char verInversa(char letra){ for(letra='z';letra>='a';letra--) cout<<"Hola "<<letra<<endl; return letra; } char verCadena(char letra){ for(letra='a';letra<='z';letra++) cout<<"Hola "<<letra<<endl; return letra; }
void main(){ char abc='a'; cout<<"\tVer abecedario"<<endl; verCadena(abc); cout<<"\tVer abecedario al reves"<<endl; char abc2='z'; verInversa(abc2); }
Códigos nuevos
10. Menú sencillo #include "stdio.h" #include "iostream.h" #include "math.h" #include "ctype.h" #include "stdlib.h"
int menu(void); //menú del programa int menu(){ int opc; cout<<"\n\tMenu del programa"<<endl; cout<<"\n1. Suma \n2. Resta \n3. Producto \n4. Division \n5. Salir"<<endl; do{ cout<<"\nTu opcion es: "<<endl; cin>>opc; }while(opc<=0 || opc>5); return opc; } void main(){ int opcion; //ciclo infinito for(;;){ opcion=menu(); switch(opcion){ case 1: printf("\nSuma");break; case 2: printf("\nResta");break; case 3: printf("\nProducto");break; case 4: printf("\nDivision");break; case 5: printf("\nSalir\n"); exit(0);break; default: //exit(1); break; } }
Códigos nuevos
}
11. Opera básica ///programa principal #include "stdio.h" #include "iostream.h" #include "math.h" #include "ctype.h" #include "stdlib.h" //la librería creada #include "funciones.h"
int menu(void); void datos(); float x,y;//variables globales void datos(){ do{ cout<<"\nIntroduce un numero: "<<endl; cin>>x; }while(x<=0); do{
}
cout<<"\nIntroduce otro numero: "<<endl; cin>>y;
}while(y<=0);
//menú del programa int menu(){ int opc; cout<<"\n\tMenu del programa"<<endl; cout<<"\n1. Suma \n2. Resta \n3. Producto \n4. Division \n5. Salir"<<endl; do{ cout<<"\nTu opcion es: "<<endl; cin>>opc; }while(opc<=0 || opc>5); return opc; }
Códigos nuevos
void main(){ int opcion; //ciclo infinito for(;;){ opcion=menu(); switch(opcion){ case 1: printf("\nSuma");datos(); cout<<"\nLa suma de "<<x<<" y "<<y<<" es "<<Suma(x,y)<<endl; break; case 2:
printf("\nResta");datos(); cout<<"\nLa resta de "<<x<<" y "<<y<<" es "<<Resta(x,y)<<endl; break;
case 3:
printf("\nProducto");datos(); cout<<"\nEl producto de "<<x<<" y "<<y<<" es "<<Producto(x,y)<<endl; break; case 4: printf("\nDivision");datos(); cout<<"\nLa division de "<<x<<" y "<<y<<" es "<<Division(x,y)<<endl;break; case 5: printf("\nSalir\n"); exit(0);break; default: //exit(1); break; } }
} //librería funciones.h /* liibrería funciones.h */ float Suma(float x,float y); float Resta(float x,float y); float Producto(float x,float y); float Division(float x,float y);
C贸digos nuevos
float Suma(float x,float y){ return x+y; } float Resta(float x,float y){ return x-y; } float Producto(float x,float y){ return x*y; } float Division(float x,float y){ return x/y; } 12. Promedio sin funciones #include "stdio.h" #include "iostream.h" #include "stdlib.h"
void main(){ int MAX=0; int contador=0; float suma=0; float calif=0; cout<<"\tPromedio en C++"<<endl; do{
cout<<"\nIntroduce numero de materias: "<<endl; cin>>MAX; }while(MAX<=0); while(contador<MAX){ cout<<"\nIntroduce nota no. "<<contador+1<<endl; cin>>calif; suma+=calif; contador++; } cout<<"\nSuma total: "<<suma<<endl; cout<<"\nPromedio: "<<suma/contador<<endl;
C贸digos nuevos
}
13. Promedio con funciones #include "stdio.h" #include "iostream.h" #include "stdlib.h" int numeroMaterias(void); void calculaPromedio(float s,int c); int numeroMaterias(){ int MAX; do{ cout<<"\nIntroduce numero de materias: "<<endl; cin>>MAX; }while(MAX<=0); return MAX;
} void calculaPromedio(float s,int c){ cout<<"\nSuma total: "<<s<<endl; cout<<"\nPromedio: "<<s/c<<endl; } void main(){ int TAM=0; int contador=0; float suma=0; float calif=0; cout<<"\tPromedio en C++"<<endl; TAM=numeroMaterias(); if(TAM>0){ while(contador<TAM){ cout<<"\nIntroduce nota no. "<<contador+1<<endl; cin>>calif; suma+=calif; contador++; } } else{ cout<<"\nError,verifica tu entrada"<<endl;
Códigos nuevos } calculaPromedio(suma,contador); } 14. Arreglos #include "iostream.h" #include "stdio.h" #include "math.h" #include "ctype.h" double verArreglo(double arreglo[],int tamanyo); double Sumatoria(double arreglo[],int tamanyo); double Sumatoria(double arreglo[],int tamanyo){ int i=0; double suma=0.0; for(i=0;i<tamanyo;i++) suma+=arreglo[i]; cout<<"\nSuma: "<<suma<<endl; return suma; }
double verArreglo(double arreglo[],int tamanyo){ int j=0; for(j=0;j<tamanyo;j++) cout<<"Posicion no. "<<j<<" Valor "<<arreglo[j]<<endl; return j; }
void main(){ //definir una arreglo estático de tamaño 7 double miArreglo[]={4.55,5.62,6.54,8.344,12.655,13.87,18.655}; cout<<"\tArreglos en C++"<<endl; //invocar a las funciones cout<<"\n\tArreglo"<<endl; verArreglo(miArreglo,7); cout<<"\n\tArreglo sumado"<<endl; Sumatoria(miArreglo,7); }
C贸digos nuevos
15. Llenar, ver, ordenar, y sumar un arreglo #include "stdio.h" #include "math.h" #include "stdlib.h" #include "iostream.h" #define TAM 10 int verVector(int miVector[],int tamanyo); int burbuja(int miVector[],int tamanyo); int sumarVector(int miVector[],int tamanyo); int verVector(int miVector[],int tamanyo){ int j=0; for(j=0;j<tamanyo;j++) cout<<"Posicion no. "<<j<<" Valor "<<miVector[j]<<endl; return j; } int burbuja(int miVector[],int tamanyo){ int k,l; int aux; for(k=0;k<tamanyo-1;k++) for(l=0;l<tamanyo-1;l++) if(miVector[l]>miVector[l+1]){ aux=miVector[l]; miVector[l]=miVector[l+1]; miVector[l+1]=aux; return k;
}
} int sumarVector(int miVector[],int tamanyo){ int m=0; double suma=0.0; for(m=0;m<tamanyo;m++) suma+=miVector[m]; cout<<"\nSuma: "<<suma<<endl; return suma; }
C贸digos nuevos
void main(){ int vector[TAM]; int i=0; cout<<"\tLlenar un vector"<<endl; for(i=0;i<TAM;i++){ cout<<"\nValor no. "<<i+1<<endl; //scanf("%d",&vector[i]); cin>>vector[i]; } //ver vector cout<<"\tVer arreglo"<<endl; verVector(vector,TAM); cout<<"\tVer arreglo ordenado"<<endl; burbuja(vector,TAM); verVector(vector,TAM); cout<<"\tSuma total"<<endl; sumarVector(vector,TAM); } 16. Otro ejemplo #include "stdio.h" #include "iostream.h" #include "ctype.h" #define MAX 10 void main(){ int i=0; float vector[MAX]; cout<<"\nIntroduce una lista de "<<MAX<<" numeros positivos"<<endl; for(i=0;i<MAX;i++) //scanf("%f",&vector[i]); cin>>vector[i]; printf("\nDatos leidos desde teclado\n"); for(i=0;i<MAX;i++) printf("%f\t",vector[i]); } 17. Llenar matriz #include "stdio.h" #include "iostream.h" #include "ctype.h" #define MAX 2
C贸digos nuevos
void main(){ int i=0,j=0; //matriz[fila][columna] int matriz[MAX][MAX]; //llenar matriz cout<<"Llenar matriz"<<endl; for(i=0;i<MAX;i++){ for(j=0;j<MAX;j++){ printf("\nValor de matriz[%d][%d] de la posicion %d: \t",i,j,j+1); scanf("%d",&matriz[i][j]); } } cout<<"Ver matriz"<<endl; //ver matriz for(i=0;i<MAX;i++){ for(j=0;j<MAX;j++){ printf("\nValor de matriz[%d][%d] de la posicion %d =%d \t",i,j,j+1,matriz[i][j]); } } } 18. Otro ejemplo #include "stdio.h" #include "iostream.h" #include "ctype.h" #define fil 3 #define col 2 void main(){ int i=0,j=0; //matriz[fila][columna] int matriz[fil][col]; //llenar matriz cout<<"Llenar matriz"<<endl; for(i=0;i<fil;i++){ for(j=0;j<col;j++){ printf("\nValor de matriz[%d][%d] de la posicion %d: \t",i,j,j+1); scanf("%d",&matriz[i][j]); } }
C贸digos nuevos cout<<"Ver matriz"<<endl; //ver matriz for(i=0;i<fil;i++){ for(j=0;j<col;j++){ printf("\nValor de matriz[%d][%d] de la posicion %d =%d \t",i,j,j+1,matriz[i][j]); } } } 19. Llenar y ver matriz #include "stdio.h" #include "iostream.h" #include "ctype.h" #define fil 3 #define col 2 void llenarMatriz(int miTabla[fil][col]); void verMatriz(int miTabla[fil][col]); int i,j; void llenarMatriz(int miTabla[fil][col]){ cout<<"Llenar matriz"<<endl; for(i=0;i<fil;i++){ printf("Fila no. %d",i); for(j=0;j<col;j++){ printf("\nValor de matriz[%d][%d] de la posicion %d: \t",i,j,j+1); scanf("%d",&miTabla[i][j]); } } } void verMatriz(int miTabla[fil][col]){ cout<<"Ver matriz"<<endl; //ver matriz for(i=0;i<fil;i++){ for(j=0;j<col;j++){ printf("\nValor de matriz[%d][%d] de la posicion %d =%d \t",i,j,j+1,miTabla[i][j]); }
C贸digos nuevos } } void main(){ //matriz[fila][columna] int matriz[fil][col]; //llenar matriz llenarMatriz(matriz); //ver matriz verMatriz(matriz); } 20. Otro ejemplo m谩s #include "math.h" #include "stdio.h" #include "iostream.h" #define Fil 2 #define Col 3 void verMatriz(double miTabla[Fil][Col]); int i=0,j=0; void verMatriz(double miTabla[Fil][Col]){ for(i=0;i<Fil;i++){ for(j=0;j<Col;j++){ printf("\nMatriz [%d][%d] =%f\t",i,j,(double)miTabla[i][j]); } } } void main(){ double matriz[Fil][Col]={ {12.99,7.54,9.033}, {3.54,6.44,7.32} }; /*equivale a matriz[fil][col] matriz[2][3] */ //ver matriz verMatriz(matriz);
Códigos nuevos
} 21. Horsocopo chino #include "stdio.h" #include "iostream.h" #include "string.h" int insertarAnyo(void); int insertarAnyo(void){ int anyo,resto; cout<<"******************************"<<endl; cout<<"********* Horoscopo chino *********"<<endl; cout<<"******************************"<<endl; do{
cout<<"\nIntroduce año de nacimiento (Ctrl +c para salir): "<<endl; cin>>anyo; }while(anyo<=0); resto=anyo%12; return resto; } void main(){ int resultado; while(true){ for(;;){ resultado=insertarAnyo(); switch(resultado){ case 0:cout<<"\nTe corresponde al año del Mono"<<endl;break; case 1:cout<<"\nTe corresponde al año del Gallo"<<endl;break; case 2:cout<<"\nTe corresponde al año del Perro"<<endl;break; case 3:cout<<"\nTe corresponde al año del Cerdo"<<endl;break; case 4:cout<<"\nTe corresponde al año de la Rata"<<endl;break; case 5:cout<<"\nTe corresponde al año del Buey"<<endl;break; case 6:cout<<"\nTe corresponde al año del Tigre"<<endl;break; case 7:cout<<"\nTe corresponde al año del Conejo"<<endl;break; case 8:cout<<"\nTe corresponde al año del Dragon"<<endl;break; case 9:cout<<"\nTe corresponde al año de la Serpiente"<<endl;break; case 10:cout<<"\nTe corresponde al año del Caballo"<<endl;break; case 11:cout<<"\nTe corresponde al año de la Cabra"<<endl;break; } }
C贸digos nuevos
} } 22. Uso de estructuras y typedef #include "stdio.h" #include "iostream.h" void leerDatos(struct IngeEconomica *inge); void verDatos(struct IngeEconomica ing); typedef int Entero; typedef double Real; struct IngeEconomica{ Real Valor; Real Tasa; Entero Periodo; }; void leerDatos(struct IngeEconomica *inge){ cout<<"\nValor: "<<endl; cin>>inge->Valor; cout<<"\nTasa: "<<endl; cin>>inge->Tasa; cout<<"\nPeriodo: "<<endl; cin>>inge->Periodo; } void verDatos(struct IngeEconomica ing){ cout<<"\n\tValor= "<<ing.Valor<<endl; cout<<"\n\tTasa= "<<ing.Tasa<<endl; cout<<"\n\tPeriodo= "<<ing.Periodo<<endl; }
void main(){ struct IngeEconomica inge; cout<<"\tIntroduce los datos que se te piden"<<endl; leerDatos(&inge); cout<<"\nDatos leidos: "<<endl; verDatos(inge);
C贸digos nuevos
} 23. El mismo ejemplo de arriba, pero con c谩lculo del valor futuro #include "stdio.h" #include "iostream.h" void leerDatos(struct IngeEconomica *inge); void verDatos(struct IngeEconomica ing); void obtenerVF(struct IngeEconomica ing); typedef int Entero; typedef double Real; struct IngeEconomica{ Real Valor; Real Tasa; Entero Periodo; }; void leerDatos(struct IngeEconomica *inge){ cout<<"\nValor: "<<endl; cin>>inge->Valor; cout<<"\nTasa: "<<endl; cin>>inge->Tasa; cout<<"\nPeriodo: "<<endl; cin>>inge->Periodo; } void verDatos(struct IngeEconomica ing){ cout<<"\n\tValor= "<<ing.Valor<<endl; cout<<"\n\tTasa= "<<ing.Tasa<<endl; cout<<"\n\tPeriodo= "<<ing.Periodo<<endl; } void obtenerVF(struct IngeEconomica ing){ Real resultado; Entero i; for(i=0;i<=ing.Periodo;i++){ resultado=ing.Valor*(1+ing.Tasa/100,i); cout<<"\nValor futuro: "<<resultado<<" periodo-> "<<i<<endl; }
C贸digos nuevos
}
void main(){ struct IngeEconomica inge; cout<<"\tIntroduce los datos que se te piden"<<endl; leerDatos(&inge); cout<<"\nDatos leidos: "<<endl; verDatos(inge); obtenerVF(inge); } 24. Leer, mostrar y calcular promedio TipoDatos.h #define MAX 50 typedef unsigned int Entero; typedef double Real; typedef unsigned char String; struct Alumno { String Nombre[MAX]; Entero Edad; Real Talla; String Telefono[MAX]; String Direccion[MAX]; Entero NumMaterias; Entero Clave; }; //en un fichero .cpp #include "iostream.h" #include "stdio.h" #include "TipoDatos.h" void leerDatos(struct Alumno *alum); void verDatos(struct Alumno alu); void calcularPromedio(struct Alumno alu); void main(){ struct Alumno alum; cout<<"\tLeer datos del alumno"<<endl;
C贸digos nuevos leerDatos(&alum); cout<<"\tVer datos del alumno"<<endl; verDatos(alum); cout<<"\tCalcular promedio del alumno"<<endl; calcularPromedio(alum); } void leerDatos(struct Alumno *alum){ cout<<"\nClave: "<<endl; cin>>alum->Clave; cout<<"\nNombre: "<<endl; cin>>alum->Nombre; cout<<"\nEdad: "<<endl; cin>>alum->Edad; cout<<"\nTalla: "<<endl; cin>>alum->Talla; cout<<"\nDireccion: "<<endl; cin>>alum->Direccion; cout<<"\nTelefono: "<<endl; cin>>alum->Telefono; cout<<"\nNumero de materias a cursar: "<<endl; cin>>alum->NumMaterias; } void verDatos(struct Alumno alu){ cout<<"\nClave: "<<alu.Clave<<endl; cout<<"\nNombre: "<<alu.Nombre<<endl; cout<<"\nEdad: "<<alu.Edad<<endl; cout<<"\nTalla: "<<alu.Talla<<endl; cout<<"\nDireccion: "<<alu.Direccion<<endl; cout<<"\nTelefono: "<<alu.Telefono<<endl; cout<<"\nNumero de materias a cursar: "<<alu.NumMaterias<<endl; } void calcularPromedio(struct Alumno alu){ Real calif=0,suma=0; Entero i; for(i=0;i<alu.NumMaterias;i++){ cout<<"\nCalificacion no. "<<i+1<<endl; cin>>calif; suma+=calif; cout<<"\nSuma parcial: "<<suma<<endl; } cout<<"\nTotal: "<<suma<<endl; cout<<"\nPromedio obtenido: "<<suma/alu.NumMaterias<<endl;
C贸digos nuevos } 25. El mismo programa, pero con men煤 TipoDatos.h #define MAX 50 typedef unsigned int Entero; typedef double Real; typedef unsigned char String; struct Alumno { String Nombre[MAX]; Entero Edad; Real Talla; String Telefono[MAX]; String Direccion[MAX]; Entero NumMaterias; Entero Clave; }; //en un fichero .cpp #include "iostream.h" #include "stdio.h" #include "TipoDatos.h" #include "ctype.h" #include "stdlib.h" void leerDatos(struct Alumno *alum); void verDatos(struct Alumno alu); void calcularPromedio(struct Alumno alu);
Entero menu(void); Entero menu(void){ Entero opc; cout<<"\tMENU"<<endl; cout<<"\n1. Leer datos\n2. Ver datos\n3. Calcular promedio\n4. Salir"<<endl; do{ cout<<"\nIntroduce opcion:"<<endl; cin>>opc; }while(opc<=0||opc>4);
C贸digos nuevos return opc; }
void main(){ struct Alumno alum; Entero opcion; for(;;){ opcion=menu(); switch(opcion){ case 1: cout<<"\tLeer datos del alumno"<<endl; leerDatos(&alum);break; case 2: cout<<"\tVer datos del alumno"<<endl; verDatos(alum);break; case 3: cout<<"\tCalcular promedio del alumno"<<endl; calcularPromedio(alum);break; case 4: cout<<"Salida "<<endl; exit(0); break; }//fin switch }//fin for
} void leerDatos(struct Alumno *alum){ cout<<"\nClave: "<<endl; cin>>alum->Clave; cout<<"\nNombre: "<<endl; cin>>alum->Nombre; cout<<"\nEdad: "<<endl; cin>>alum->Edad; cout<<"\nTalla: "<<endl; cin>>alum->Talla; cout<<"\nDireccion: "<<endl; cin>>alum->Direccion; cout<<"\nTelefono: "<<endl; cin>>alum->Telefono; cout<<"\nNumero de materias a cursar: "<<endl; cin>>alum->NumMaterias; } void verDatos(struct Alumno alu){ cout<<"\nClave: "<<alu.Clave<<endl; cout<<"\nNombre: "<<alu.Nombre<<endl;
C贸digos nuevos cout<<"\nEdad: "<<alu.Edad<<endl; cout<<"\nTalla: "<<alu.Talla<<endl; cout<<"\nDireccion: "<<alu.Direccion<<endl; cout<<"\nTelefono: "<<alu.Telefono<<endl; cout<<"\nNumero de materias a cursar: "<<alu.NumMaterias<<endl; } void calcularPromedio(struct Alumno alu){ Real calif=0,suma=0; Entero i; for(i=0;i<alu.NumMaterias;i++){ cout<<"\nCalificacion no. "<<i+1<<endl; cin>>calif; suma+=calif; cout<<"\nSuma parcial: "<<suma<<endl; } cout<<"\nTotal: "<<suma<<endl; cout<<"\nPromedio obtenido: "<<suma/alu.NumMaterias<<endl;
}
26. Calcular funci贸n sen y cos #include "stdio.h" #include "iostream.h" #include "ctype.h" #include "stdlib.h" #include "math.h" #define MAX 10 typedef unsigned int Entero; typedef unsigned double Real;
Real FuncionSen(Real x); Real FuncionCos(Real x); Entero menu(void); Entero menu(void){ Entero opc; cout<<"\n"<<endl; cout<<"\t*** [MENU DEL PROGRAMA] ***"<<endl;
C贸digos nuevos cout<<"\n1. Calcular funcion sen(x)+x"<<endl; cout<<"\n2. Calcular funcion cos(x)+x"<<endl; cout<<"\n3. Salir"<<endl; do{
cout<<"\nEscribe tu opcion: "<<endl; cin>>opc; }while(opc<=0||opc>3); }
return opc;
Real FuncionSen(Real x){ return sin(x)+x; } Real FuncionCos(Real x){ return cos(x)+x; } void main(){ Entero opcion;Real x; for(;;){ opcion=menu(); switch(opcion){ case 1:
cout<<"\nFuncion sen(x)+x"<<endl; printf("\nIntroduce valor de x: "); cin>>x; cout<<"\nResultado= "<<FuncionSen(x)<<endl; break;
case 2:
cout<<"\nFuncion sen(x)+x"<<endl; printf("\nIntroduce valor de x: "); cin>>x; cout<<"\nResultado= "<<FuncionCos(x)<<endl; break; case 3: exit(1);break;
} } } 27. Uso de enumeraciones, cuentavocales #include "stdio.h"
C贸digos nuevos #include "math.h" #include "stdlib.h" #include "io.h" #include "iostream.h" #include "ctype.h" //uso de enumeraciones enum booleano{ FALSE, TRUE }; //definir una funci贸n tipo enum enum booleano vocal(char c); enum booleano vocal(char c){ switch(c){ case 'a': case 'e': case 'i': case 'o': case 'u': return TRUE; default: return FALSE; } } void main(){ char car; int numeroVocal=0; cout<<"\nIntroduce un texto y presiona Intro: "<<endl; while((car=getchar())!='\n') { if(vocal(tolower(car))) numeroVocal++;
}
} printf("\nTotal de vocales leidas: %d\n",numeroVocal);
28. Ejemplo con clase #include "stdio.h" #include "iostream.h" #include "math.h" #include "ctype.h" #include "stdlib.h"
Códigos nuevos
int menu(void); int menu(){ int opc; cout<<"\tIntroduce los datos que se te piden"<<endl; cout<<"\n"<<endl; cout<<"\n1. Valor futuro\n2. Valor presente\n3. Salir"<<endl; do{ cout<<"\nTu opcion: "<<endl; cin>>opc; }while(opc<=0||opc>3); return opc; } class Economica{ //miembros private: double Valor; int Periodo; double Tasa; public: //métodos set void setValor(double mValor); void setTasa(double mTasa); void setPeriodo(int mPeriodo); //métodos get int getPeriodo(); double getValor(); double getTasa(); //cálculos double calcVF(); double calcVP(); }; void Economica::setValor(double mValor){ Valor=mValor; } void Economica::setTasa(double mTasa){
C贸digos nuevos Tasa=mTasa; } void Economica::setPeriodo(int mPeriodo){ Periodo=mPeriodo; }
double Economica::getValor(){ return Valor; } double Economica::getTasa(){ return Tasa; } int Economica::getPeriodo(){ return Periodo; } double Economica::calcVF(){ return Valor*pow(1+Tasa/100,Periodo); } double Economica::calcVP(){ return Valor/pow(1+Tasa/100,Periodo); } void main(){ //instancia de la clase Economica eco; int p=0;double t=0,v=0; int opcion; for(;;){ opcion=menu(); switch(opcion){ case 1: cout<<"\nValor: "<<endl; cin>>v; cout<<"\nTasa: "<<endl; cin>>t; cout<<"\nPeriodo: "<<endl; cin>>p; //asignar eco.setValor(v); eco.setTasa(t); eco.setPeriodo(p); //recuperar
C贸digos nuevos cout<<"\nValor: "<<eco.getValor()<<endl; cout<<"\nTasa: "<<eco.getTasa()<<endl; cout<<"\nPeriodo: "<<eco.getPeriodo()<<endl; cout<<"\n Valor futuro: "<<eco.calcVF()<<endl;
break; case 2:
cout<<"\nValor: "<<endl; cin>>v; cout<<"\nTasa: "<<endl; cin>>t; cout<<"\nPeriodo: "<<endl; cin>>p; //asignar eco.setValor(v); eco.setTasa(t); eco.setPeriodo(p); //recuperar cout<<"\nValor: "<<eco.getValor()<<endl; cout<<"\nTasa: "<<eco.getTasa()<<endl; cout<<"\nPeriodo: "<<eco.getPeriodo()<<endl; cout<<"\n Valor presente: "<<eco.calcVP()<<endl;
break; case 3:exit(0);break; default:break; }//fin switch
}//fin for } 29.
C贸digos nuevos
C贸digos Java 1. Burbuja import java.io.*; public class Jp3{ public static void main(String[]args){ int[] arreglo={100,54,0,43,56,12,4,95,32,5}; System.out.println("\tArreglo sin ordenar"); verArreglo(arreglo); System.out.println("\tArreglo ordenado"); burbuja(arreglo); verArreglo(arreglo);
} static int verArreglo(int[] vector){ int i=0; for(i=0;i<vector.length;i++) System.out.println("Posicion no. "+i+" Valor= "+vector[i]); return i; } static int burbuja(int[] arreglo){ int i,j; int aux; for(i=0;i<arreglo.length-1;i++) for(j=0;j<arreglo.length-1;j++) if(arreglo[j]>arreglo[j+1]){ aux=arreglo[j]; arreglo[j]=arreglo[j+1]; arreglo[j+1]=aux; return i; }
}
Códigos nuevos
} 2. Formulario básico en JSP <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>::Inicio::</title> </head> <body> <%-- aqui comienza código jsp--%> <% out.println("<h1 align='center'>Inicio</h1>"); %> <table align="center"> <form method="post" action="index.jsp"> <tr> <td>Nombre: </td> <td><input type="text" name="nombre" id="nombre" /></td> <td>Edad:</td> <td><input type="text" name="edad" id="edad" /></td> </tr> <tr> <td>Tel&eacute;fono: </td> <td><input type="text" name="telefono" id="telefono" /></td> <td>Direcci&oacute;n:</td> <td><input type="text" name="direccion" id="direccion" /></td> </tr> <tr> <td>Clave: </td> <td><input type="password" name="clave" id="clave" /></td> <td>Licenciatura:</td> <td> <select name="licenciatura"> <option value="Ingeniería">Ingeniería</option> <option value="Derecho">Derecho</option> <option value="Administración">Administración</option> <option value="Contaduría">Contaduría</option> </select> </td> </tr> <tr>
C贸digos nuevos
<td><input type="submit" value="ENVIAR" name="ENVIAR" /></td> </tr> </form> </table> <div> <% String nombre=""; String email=""; String direccion=""; String clave=""; String telefono=""; String licenciatura=""; String edad=""; nombre=(String)request.getParameter("nombre"); edad=(String)request.getParameter("edad"); telefono=(String)request.getParameter("telefono"); direccion=(String)request.getParameter("direccion"); licenciatura=(String)request.getParameter("licenciatura"); clave=(String)request.getParameter("clave");
out.println("Nombre: "+nombre+"<br/>"); out.println("Edad: "+edad+"<br/>"); out.println("Telefono: "+telefono+"<br/>"); out.println("Direcci贸n: "+direccion+"<br/>"); out.println("Clave: "+clave+"<br/>"); out.println("Licenciatura: "+licenciatura+"<br/>"); %> </div> </body> </html> 3. Uso de clases Jp4.java public class Jp4{ public String Nombre; public int Edad; public double Talla; public Jp4(String mNombre,int mEdad,double mTalla){ this.Nombre=mNombre;
C贸digos nuevos this.Edad=mEdad; this.Talla=mTalla; } //m茅todos Set y Get public void asignaNombre(String mNombre){ this.Nombre=mNombre; } public String obtenerNombre(){ return Nombre; } public void asignaEdad(int mEdad){ this.Edad=mEdad; } public int obtenerEdad(){ return Edad; } public void asignaTalla(double mTalla){ this.Talla=mTalla; } public double obtenerTalla(){ return Talla; } } UsoJp4.java import java.io.*; import java.util.Scanner;
public class UsoJp4{ public static void main(String[] args){ Jp4 miPrograma4=new Jp4("",0,0); miPrograma4.Nombre="";miPrograma4.Edad=0;miPrograma4.Talla=0;
C贸digos nuevos
Scanner teclado=new Scanner(System.in); System.out.println("\nIntroduce nombre: "); miPrograma4.Nombre=teclado.nextLine(); System.out.println("\nIntroduce edad "); miPrograma4.Edad=teclado.nextInt(); System.out.println("\nIntroduce talla: "); miPrograma4.Talla=teclado.nextDouble(); miPrograma4=new Jp4(miPrograma4.Nombre,miPrograma4.Edad,miPrograma4.Talla); miPrograma4.asignaNombre(miPrograma4.Nombre); miPrograma4.asignaEdad(miPrograma4.Edad); miPrograma4.asignaTalla(miPrograma4.Talla); System.out.println("\tNombre: "+miPrograma4.obtenerNombre()); System.out.println("\tEdad: "+miPrograma4.obtenerEdad()); System.out.println("\tTalla: "+miPrograma4.obtenerTalla()); System.exit(0); }
} 4. Conexi贸n JSP - MySQL <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*,java.net.*,java.io.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>::Conexi&oacute;n a MySQL::</title> </head> <body> <%! String usuarioMysql(){ return "root"; } String passwordMysql(){ return "root"; } %>
C贸digos nuevos
<% Connection canal = null; Statement instruccion=null; ResultSet tabla= null; String conexion ="jdbc:mysql://localhost/sistema?user="+usuarioMysql() +"&password="+passwordMysql(); //Abrir el enlace try{ Class.forName("com.mysql.jdbc.Driver").newInstance(); canal = DriverManager.getConnection(conexion); instruccion = canal.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_ UPDATABLE); } catch(ClassNotFoundException e){ out.println(e);} catch(SQLException e){ out.println(e);} try{ tabla = instruccion.executeQuery("select *from usuarios"); out.println("<font face=Courier size=2>"); out.println("<h1 align=center>Usuarios del sistema</h1>"); out.println("<table border=1 align=center cellspacing=1 cellpadding=1>"); out.println("<tr><th bgcolor=red>Id usuario </th><th bgcolor=steelblue>Nombre</th>"); out.println("<th bgcolor=steelblue>Apellido paterno</th><th bgcolor=steelblue>Apellido materno</th>"); out.println("<th bgcolor=steelblue>Telefono</th><th bgcolor=steelblue>Email</th>"); out.println("<th bgcolor=steelblue>Login</th><th bgcolor=steelblue>Clave</th></tr>"); while(tabla.next()){ out.println("<tr><td bgcolor=gray>"+tabla.getInt(1)+"</td><td>"+tabla.getString(2)+"</td>"); out.println("<td>"+tabla.getString(3)+"</td><td>"+tabla.getString(4)+"</td>"); out.println("<td>"+tabla.getString(5)+"</td><td>"+tabla.getString(6)+"</td>"); out.println("<td>"+tabla.getString(7)+"</td><td>"+tabla.getString(8)+"</td></tr >"); } out.println("</table>"); out.println("</font><br/><a href=http://localhost:8080/pages/index.jsp title=regreso>Regreso</a>"); } catch(Exception e){ out.println(e);} %> </body> </html>
C贸digos nuevos 5. Insertar datos en JSP <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %> <% //declaraci贸n de variables globales Statement stmt_consul=null, stmt_inser = null; ResultSet rs = null; Connection conn= null; Object dato; //conexion a la base de datos try { Class.forName("com.mysql.jdbc.Driver").newInstance(); conn = DriverManager.getConnection("jdbc:mysql://localhost/prueba? user=root&password="); }catch(SQLException ex) {} //insersi贸n de datos String temp2=request.getParameter("op"); if(temp2==null)temp2=""; if(temp2.compareTo("Guardar")==0){ try{ stmt_inser = conn.createStatement(); String codigo=request.getParameter("txtcodigo"); if(codigo==null)codigo=""; String desc=request.getParameter("txtdesc"); if(desc==null)desc=""; int cant=Integer.parseInt(request.getParameter("txtcant")); String precio=request.getParameter("txtprecio"); if(precio==null)desc="0"; String strSQL= "INSERT INTO articulo values('" + codigo + "','" + desc + "'," + cant + "," + precio +")"; stmt_inser.executeUpdate(strSQL); out.println("Insersi贸n exitosa"); } catch (SQLException ex) {} } //Consultar la base de datos try{ stmt_consul = conn.createStatement(); rs = stmt_consul.executeQuery("SELECT * FROM articulo"); rs = stmt_consul.getResultSet(); } catch (SQLException ex) { out.println("SQLException: " + ex.getMessage()); out.println("SQLState: " + ex.getSQLState()); out.println("VendorError: " + ex.getErrorCode()); } %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html>
C贸digos nuevos <head> <title>Documento sin t&iacute;tulo</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <div align="center"><strong>LISTADO DE ART&Iacute;CULOS </strong><br> </div> <table width="464" height="52" border="1" align="center"> <tr align="center" bgcolor="#FFFFCC"> <td><strong>C&oacute;digo</strong></td> <td><strong>Descripci&oacute;n</strong></td> <td><strong>Cantidad</strong></td> <td><strong>Precio</strong></td> </tr> <% while (rs.next()) { %> <tr> <td><%= (dato=rs.getObject("codigo"))==null ?"":dato%></td> <td><%= (dato=rs.getObject("descripcion"))==null ?"":dato%></td> <td><%= (dato=rs.getObject("cantidad"))==null ?"":dato%></td> <td><%= (dato=rs.getObject("precio"))==null ?"":dato%></td> </tr> <% } %> </table> <blockquote> <p><a href="bd_consulta.jsp?op=frmInsert">Nuevo art&iacute;culo </a> </p> </blockquote> <% String temp1=request.getParameter("op"); if(temp1==null)temp1=""; if(temp1.compareTo("frmInsert")==0){ %> <form name="form1" method="post" action="bd_consulta.jsp"> <fieldset> <table width="552" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td bordercolor="#FFFFCC" bgcolor="#FFFFCC"><strong>C贸digo:</strong></td> <td><input name="txtcodigo" type="text" size="10" maxlength="6"></td> </tr> <tr> <td bordercolor="#FFFFCC" bgcolor="#FFFFCC"><strong>Descripci贸n: </strong></td> <td><input name="txtdesc" type="text" size="50" maxlength="50"></td> </tr> <tr> <td bordercolor="#FFFFCC" bgcolor="#FFFFCC"><strong>Cantidad: </strong></td> <td><input name="txtcant" type="text" size="10" maxlength="10"></td>
C贸digos nuevos </tr> <tr> <td bordercolor="#FFFFCC" bgcolor="#FFFFCC"><strong>Precio: </strong></td> <td><input name="txtprecio" type="text" size="10" maxlength="10"></td> </tr> <tr align="center"> <td colspan="2" bordercolor="#FFFFCC" bgcolor="#FFFFCC"><input name="op" type="submit" id="op" value="Guardar"></td> </tr> </table> </fieldset> </form> <% }//fin formulario %> </body> </html> <% //cerrar la conexion try { rs.close(); stmt_consul.close(); conn.close(); } catch (SQLException sqlEx) {} %> 6. Conexi贸n simple con MySQL
<%@ page import="java.sql.*" %> <% //String connectionURL ="jdbc:mysql://localhost:3306/sistema? user=root;password=root"; String connectionURL = "jdbc:mysql://localhost/test"; Connection connection = null; Statement statement = null; ResultSet rs = null; %> <html><body> <% Class.forName("com.mysql.jdbc.Driver").newInstance(); connection = DriverManager.getConnection(connectionURL, "root", "root"); statement = connection.createStatement(); rs = statement.executeQuery("SELECT * FROM usuarios"); while (rs.next()) { out.println(rs.getString("name")+"<br>"); } rs.close(); %>
7. Pasos para conectar una BD en JSP // Paso 1. Abrir la conexi贸n a la base de datos. //MEDIANTE ODBC Connection conexion = DriverManager.getConnection("jdbc:odbc:Nombre_ODBC","usuario","password");
Códigos nuevos //CONEXIÓN DIRECTA A MYSQL Class.forName("com.mysql.jdbc.Driver").newInstance(); conn = DriverManager.getConnection("jdbc:mysql://localhost/prueba?user=root&password="); // Paso 2. Ejecutar consultas a la base de datos. Statement Estamento = conexion.creStatement(); ResultSet rs = Estamento.executeQuery("select dni,nombre,apellidos,edad from agenda"); // Paso 3. Procesar los resultados. En este caso los muestra en pantalla. while (rs.next()) { out.println("DNI ->"+ rs.getString("dni")); out.println("NOMBRE ->"+ rs.getString("nombre")); out.println("APELLIDOS ->"+ rs.getString("apellidos")); out.println("EDAD ->"+ rs.getInt("edad")); } // Paso 4 . Cerrar la conexión a la base de datos. rs.close(); Estamento.close(); conexion.close();
8. Consultar datos en JSP <% //declaración de variables globales Statement stmt_consul=null, stmt_inser = null; ResultSet rs = null; Connection conn= null; Object dato; //conexion a la base de datos try { Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection("jdbc:mysql://localhost/prueba? user=root&password="); }catch(SQLException ex) {} //insersión de datos String temp2=request.getParameter("op"); if(temp2==null)temp2=""; if(temp2.compareTo("Guardar")==0){ try{ stmt_inser = conn.createStatement(); String codigo=request.getParameter("txtcodigo"); if(codigo==null)codigo=""; String desc=request.getParameter("txtdesc"); if(desc==null)desc=""; int cant=Integer.parseInt(request.getParameter("txtcant")); String precio=request.getParameter("txtprecio"); if(precio==null)desc="0"; String strSQL= "INSERT INTO articulo values('" + codigo + "','" + desc + "'," + cant + "," + precio +")"; stmt_inser.executeUpdate(strSQL); out.println("Insersión exitosa");
} catch (SQLException ex) {} } //Consultar la base de datos try{ stmt_consul = conn.createStatement(); rs = stmt_consul.executeQuery("SELECT * FROM articulo"); rs = stmt_consul.getResultSet(); } catch (SQLException ex) { out.println("SQLException: " + ex.getMessage()); out.println("SQLState: " + ex.getSQLState()); out.println("VendorError: " + ex.getErrorCode()); } %>
C贸digos nuevos <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Documento sin t&iacute;tulo</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <div align="center"><strong>LISTADO DE ART&Iacute;CULOS </strong><br> </div> <table width="464" height="52" border="1" align="center"> <tr align="center" bgcolor="#FFFFCC"> <td><strong>C&oacute;digo</strong></td> <td><strong>Descripci&oacute;n</strong></td> <td><strong>Cantidad</strong></td> <td><strong>Precio</strong></td> </tr> <% while (rs.next()) { %> <tr> <td><%= (dato=rs.getObject("codigo"))==null ?"":dato%></td> <td><%= (dato=rs.getObject("descripcion"))==null ?"":dato%></td> <td><%= (dato=rs.getObject("cantidad"))==null ?"":dato%></td> <td><%= (dato=rs.getObject("precio"))==null ?"":dato%></td> </tr> <% } %> </table> <blockquote> <p><a href="bd_consulta.jsp?op=frmInsert">Nuevo art&iacute;culo </a> </p> </blockquote> <% String temp1=request.getParameter("op"); if(temp1==null)temp1=""; if(temp1.compareTo("frmInsert")==0){ %> <form name="form1" method="post" action="bd_consulta.jsp"> <fieldset> <table width="552" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td bordercolor="#FFFFCC" bgcolor="#FFFFCC"><strong>C贸digo:</strong></td> <td><input name="txtcodigo" type="text" size="10" maxlength="6"></td> </tr> <tr>
<td bordercolor="#FFFFCC" bgcolor="#FFFFCC"><strong>Descripci贸n: </strong></td> <td><input name="txtdesc" type="text" size="50" maxlength="50"></td> </tr> <tr> <td bordercolor="#FFFFCC" bgcolor="#FFFFCC"><strong>Cantidad: </strong></td>
<td><input name="txtcant" type="text" size="10" maxlength="10"></td> </tr> <tr> <td bordercolor="#FFFFCC" bgcolor="#FFFFCC"><strong>Precio: </strong></td> <td><input name="txtprecio" type="text" size="10" maxlength="10"></td> </tr> <tr align="center"> <td colspan="2" bordercolor="#FFFFCC" bgcolor="#FFFFCC"><input name="op" type="submit" id="op" value="Guardar"></td> </tr>
</table> </fieldset> </form> <% }//fin formulario %>
C贸digos nuevos </body> </html> <% //cerrar la conexion try { rs.close(); stmt_consul.close(); conn.close(); } catch (SQLException sqlEx) {} %>
9. Activar formulario mediante un enlace <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>::Inicio::</title> </head> <body> <%-- aqui comienza c贸digo jsp--%> <% out.println("<h1 align='center'>Inicio</h1>"); %> <blockquote> <p> <a href="index.jsp?op=frmInsert">Enviar</a> </p> </blockquote> <%
String temp1=request.getParameter("op"); if(temp1==null)temp1=""; if(temp1.compareTo("frmInsert")==0){
%> <table align="center"> <form method="post" action="index.jsp" name="form1"> <tr> <td>Nombre: </td> <td><input type="text" name="nombre" id="nombre" /></td> <td>Edad:</td> <td><input type="text" name="edad" id="edad" /></td> </tr> <tr> <td>Tel&eacute;fono: </td>
Códigos nuevos <td><input type="text" name="telefono" id="telefono" /></td> <td>Direcci&oacute;n:</td> <td><input type="text" name="direccion" id="direccion" /></td> </tr> <tr> <td>Clave: </td> <td><input type="password" name="clave" id="clave" /></td> <td>Licenciatura:</td> <td> <select name="licenciatura"> <option value="Ingeniería">Ingeniería</option> <option value="Derecho">Derecho</option> <option value="Administración">Administración</option> <option value="Contaduría">Contaduría</option> </select> </td> </tr> <tr> <td><input type="submit" value="ENVIAR" name="ENVIAR" /></td> </tr> </form> </table> <% }//fin formulario %> <div> <% String nombre=""; String email=""; String direccion=""; String clave=""; String telefono=""; String licenciatura=""; String edad=""; nombre=(String)request.getParameter("nombre"); edad=(String)request.getParameter("edad"); telefono=(String)request.getParameter("telefono"); direccion=(String)request.getParameter("direccion"); licenciatura=(String)request.getParameter("licenciatura"); clave=(String)request.getParameter("clave"); out.println("Nombre: "+nombre+"<br/>"); out.println("Edad: "+edad+"<br/>"); out.println("Telefono: "+telefono+"<br/>"); out.println("Dirección: "+direccion+"<br/>"); out.println("Clave: "+clave+"<br/>"); out.println("Licenciatura: "+licenciatura+"<br/>"); %>
C贸digos nuevos </div> 10. Calcular valor futuro y presente <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*,java.io.*,java.util.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>::C&aacute;lculos::</title> </head> <body> <h1 align="center">Inter&eacute;s compuesto</h1> <table align="center" border="1" cellpadding="1" cellspacing="1"> <form method="post" action="pro4.jsp" name="miform1" id="miform1"> <tr> <td>Valor</td> <td><input type="text" name="valor" id="valor" /></td> </tr> <tr> <td>Tasa</td> <td><input type="text" name="tasa" id="tasa" /></td> </tr> <tr> <td>Periodo</td> <td><input type="text" name="periodo" id="periodo" /></td> </tr> <tr> <td><strong>Valor Futuro</strong> <input type="radio" name="Valor Futuro" id="Valor Futuro" value="Valor Futuro" /></td> <td><strong>Valor Presente</strong> <input type="radio" name="Valor Presente" id="Valor Presente" value="Valor Presente" /></td> </tr> <tr> <td><input type="submit" name="CALCULAR" value="CALCULAR" /></td> <td><input type="reset" name="BORRAR" value="BORRAR" /></td> </tr> </form> </table> <% double Valor=0; double Tasa=0; int Periodo=0; double Resultado=0;
C贸digos nuevos
if(request.getParameter("Valor Futuro")!=null){ Valor=Double.parseDouble(request.getParameter("valor")); Tasa=Double.parseDouble(request.getParameter("tasa")); Periodo=Integer.parseInt(request.getParameter("periodo")); Resultado=Valor*Math.pow(1+Tasa/100,Periodo); }; if(request.getParameter("Valor Presente")!=null){ Valor=Double.parseDouble(request.getParameter("valor")); Tasa=Double.parseDouble(request.getParameter("tasa")); Periodo=Integer.parseInt(request.getParameter("periodo")); Resultado=Valor/Math.pow(1+Tasa/100,Periodo); }; out.println("<br/><blockquote><b>Datos leidos:</b> <br/>"); out.println("Valor: <font color=red>"+Valor+"</font>"); out.println("Tasa: <font color=red>"+Tasa+"</font>"); out.println("Periodo:<font color=red> "+Periodo+"</font>"); out.println("Resultado=<font color=blue>"+Resultado+"</font>"); out.println("</blockquote>"); %> <a href="index.jsp">Regreso</a> </body> </html> 11. Mismo ejemplo del anterior, pero indica que opci贸n se eligio <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*,java.io.*,java.util.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>::C&aacute;lculos::</title> </head> <body> <h1 align="center">Inter&eacute;s compuesto</h1> <table align="center" border="1" cellpadding="1" cellspacing="1"> <form method="post" action="pro4.jsp" name="miform1" id="miform1"> <tr> <td>Valor</td> <td><input type="text" name="valor" id="valor" /></td> </tr>
C贸digos nuevos <tr> <td>Tasa</td> <td><input type="text" name="tasa" id="tasa" /></td> </tr> <tr> <td>Periodo</td> <td><input type="text" name="periodo" id="periodo" /></td> </tr> <tr> <td><strong>Valor Futuro</strong> <input type="radio" name="Valor Futuro" id="Valor Futuro" value="Valor Futuro" /></td> <td><strong>Valor Presente</strong> <input type="radio" name="Valor Presente" id="Valor Presente" value="Valor Presente" /></td> </tr> <tr> <td><input type="submit" name="CALCULAR" value="CALCULAR" /></td> <td><input type="reset" name="BORRAR" value="BORRAR" /></td> </tr> </form> </table> <% double Valor=0; double Tasa=0; int Periodo=0; double Resultado=0; int i=0; if(request.getParameter("Valor Futuro")!=null){ i=1; Valor=Double.parseDouble(request.getParameter("valor")); Tasa=Double.parseDouble(request.getParameter("tasa")); Periodo=Integer.parseInt(request.getParameter("periodo")); Resultado=Valor*Math.pow(1+Tasa/100,Periodo); }; if(request.getParameter("Valor Presente")!=null){ i=2; Valor=Double.parseDouble(request.getParameter("valor")); Tasa=Double.parseDouble(request.getParameter("tasa")); Periodo=Integer.parseInt(request.getParameter("periodo")); Resultado=Valor/Math.pow(1+Tasa/100,Periodo); };
C贸digos nuevos
out.println("<br/><blockquote><b>Datos leidos:</b> <br/>"); out.println("Valor: <font color=red>"+Valor+"</font>"); out.println("Tasa: <font color=red>"+Tasa+"</font>"); out.println("Periodo:<font color=red> "+Periodo+"</font>"); out.println("Resultado=<font color=blue>"+Resultado+"</font>"); out.println("</blockquote>"); if(i==2){ out.println("Elegiste valor presente <br/>"); } else if(i==1){ out.println("Elegiste valor futuro <br/>"); }
%> <a href="index.jsp">Regreso</a> </body> </html> 12. Conocer IP, Host y lugar del sitio <% out.println("<br/>"); %> <strong>Mi IP</strong> es: <%=request.getRemoteAddr() %> <br/> <strong>El Host</strong> es: <%=request.getRemoteHost()%> <br/> <strong>El lugar</strong> es: <%=request.getRequestURI()%> <br/> 13. Selecci贸n multiple <form action="pro5.jsp" method="post"> Elige un n煤mero <select name="selectMultiple" multiple="multiple"> <option value="1">Uno</option> <option value="2">Dos</option> <option value="3">Tres</option> <option value="4">Cuatro</option> </select> <input type="submit" value="Enviar" name="Enviar"/> </form> Se marcaron las siguientes entradas: <br> <%
C贸digos nuevos String[] seleccion=request.getParameterValues("selectMultiple"); int i=0; if(request.getParameter("Enviar")!=null) { for (i=0;i<seleccion.length;i++) { %> <%= seleccion[i] %> <br> <% } //fin for };//fin if %> 14. Uso de Java Bean <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*,java.io.*,java.util.*" errorPage="" %> <%@ page import="pruebas.*" info="prueba de uso de java beans" %> <%-<jsp:useBean id="miPrueba" class="pruebas.Prueba"/> <jsp:setProperty name="miPrueba" property="*"/> --%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>::Uso de Java Beans::</title> <link href="Estilo.css" rel="stylesheet" type="text/css" /> </head> <body id="carraro2"> <h2>Uso de Java beans</h2> Suma 5+6= <%= Prueba.Suma(5,6) %> Resta 14+8= <%= Prueba.Resta(14,8) %> <br> <p>Si ves esto ya funciona el java bean</p> <a href="index.jsp" class="carraro">Regreso</a> </body> </html>
C贸digos nuevos
15. Ejemplo de formulario <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*,java.io.*,java.util.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>::Uso de formularios::</title> <link href="Estilo.css" rel="stylesheet" type="text/css" /> </head> <body id="carraro2"> <% out.println("<h2>Introduce valor de x</h2>"); out.println("<b>f(x)=5x<sup>2</sup>+2x+10</b>"); %> <table> <form method="post" action="pro7.jsp" name="miform"> <tr> <td>Valor de x:<input type="text" name="x" value="" size="3" maxlength="3"></td> <td><input type="submit" value="Enviar" name="Enviar"></td> </tr> </form> </table> <br> <% double valorX=0.0; double Resultado=0.0; int i=0; if(request.getParameter("Enviar")!=null){ valorX=Double.parseDouble(request.getParameter("x")); for(i=0;i<=(int)valorX;i++){ Resultado=(5*Math.pow(i,2))+(2*i)+10; out.println("Resultado [ "+i+"]="+Resultado+"<br/>"); } }; %> <a href="index.jsp" class="carraro">Regreso</a> </body> </html> 16. Ejemplo de uso de m茅todos <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*,java.io.*,java.util.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
Códigos nuevos <title>::Uso de funciones o métodos::</title> <link href="Estilo.css" rel="stylesheet" type="text/css" /> </head> <body id="carraro2"> <%! public String miMetodo(String miMsg) { return "El mensaje dice: "+miMsg; } public int Suma(int x, int y){ return x+y; } public int Resta(int x,int y){ return x-y; } %> <%-- aqui se en los resultados --%> <%= miMetodo("Ya funciono correctamente") %> <br> Suma 5+4= <%= Suma(5,4) %> <br> Resta 35-16= <%= Resta(35,16) %> <br> <a href="index.jsp" class="carraro">Regreso</a> </body></html> 17. Uso de clases en JSP <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*,java.io.*,java.util.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>::Uso de clases y métodos::</title> <link href="Estilo.css" rel="stylesheet" type="text/css" /> </head> <body id="carraro2"> <h2>Uso de clases</h2> <%! //aqui creo la clase Persona
C贸digos nuevos public class Persona{ //con sus atributos public String Nombre; public int Edad; public double Talla; //constructor public Persona(){ } // y los m茅todos set y get public void asignaNombre(String mNombre){ this.Nombre=mNombre; } public String obtenerNombre(){ return this.Nombre; } public void asignaEdad(int mEdad){ this.Edad=mEdad; } public int obtenerEdad(){ return this.Edad; } public void asignaTalla(double mTalla){ this.Talla=mTalla; } public double obtenerTalla(){ return this.Talla; } }//fin clase persona %> <!-- aqui van las variables a usar--> <% String Nombre="Fernando Carraro Aguirre"; int Edad=27; double Talla=1.55; Persona miPersona=new Persona(); miPersona.asignaNombre(Nombre); miPersona.asignaEdad(Edad); miPersona.asignaTalla(Talla);
C贸digos nuevos
%> <% out.println("Nombre:<b> "+miPersona.obtenerNombre()+"</b><br/>"); out.println("Eda: <b>"+miPersona.obtenerEdad()+"</b><br/>"); out.println("Talla: <b>"+miPersona.obtenerTalla()+"</b>"); %> <br/> <a href="index.jsp" class="carraro">Regreso</a> </body></html> 18. Formualario con Java Beans //pro1.java package pruebas; //clase principal public class pro1{ //miembros o atributos de la clase public String Nombre; public String Apaterno; public String Amaterno; public int Edad; public String Direccion; public String Telefono; public String Email; public String Licenciatura; //constructor public pro1(){ }//fin constructor //m茅todos set y get public void setNombre(String mNombre){ this.Nombre=mNombre; } public void setApaterno(String mApaterno){ this.Apaterno=mApaterno; } public void setAmaterno(String mAmaterno){ this.Amaterno=mAmaterno; } public void setEdad(int mEdad){ this.Edad=mEdad; }
C贸digos nuevos
public void setDireccion(String mDireccion){ this.Direccion=mDireccion; } public void setTelefono(String mTelefono){ this.Telefono=mTelefono; } public void setEmail(String mEmail){ this.Email=mEmail; } public void setLicenciatura(String mLicenciatura){ this.Licenciatura=mLicenciatura; } public String getNombre(){ return Nombre; } public String getApaterno(){ return Apaterno; } public String getAmaterno(){ return Amaterno; } public int getEdad(){ return Edad; } public String getDireccion(){ return Direccion; } public String getTelefono(){ return Telefono; } public String getEmail(){ return Email; } public String getLicenciatura(){ return Licenciatura; }
}//fin clase
C贸digos nuevos
formulario.jsp <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %> <%@ page import="pruebas.*" info="invoco la clase pro1 del paquete pruebas" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>::Formulario y Java Beans::</title> <link href="Estilo.css" rel="stylesheet" type="text/css" /> </head> <body id="carraro2"> <h2>Datos personales</h2> <table> <form action="pro12.jsp" method="post" id="miForm" name="miForm"> <tr> <td>Nombre:</td> <td><input type="text" name="nombre" id="nombre" value="" /></td> </tr> <tr> <td>Apellido paterno:</td> <td><input type="text" name="apaterno" id="apaterno" value="" /></td> </tr> <tr> <td>Apellido materno:</td> <td><input type="text" name="amaterno" id="amaterno" value="" /></td> </tr> <tr> <td>Edad:</td> <td><input type="text" name="edad" id="edad" value="" /></td> </tr> <tr> <td>Direcci&oacute;n:</td> <td><input type="text" name="direccion" id="direccion" value="" /></td> </tr> <tr> <td>Tel&eacute;fono:</td> <td><input type="text" name="telefono" id="telefono" value="" /></td> </tr> <tr> <td>Email:</td> <td><input type="text" name="email" id="email" value="" /></td> </tr> <tr> <td>Licenciatura:</td> <td><input type="text" name="licenciatura" id="licenciatura" value="" /></td> </tr> <tr>
C贸digos nuevos <td></td> <td><input type="submit" value="Enviar" name="Enviar" title="enviar ahora" /></td> </tr> </form> </table> <br /> <div> <% //defino las variables a usar String Nombre=""; String Apaterno=""; String Amaterno=""; int Edad=0; String Direccion=""; String Telefono=""; String Email=""; String Licenciatura=""; if(request.getParameter("Enviar")!=null){ //acciones a realizar //instancia de la clase pro1 miProg2=new pro1(); Nombre=request.getParameter("nombre"); Apaterno=request.getParameter("apaterno"); Amaterno=request.getParameter("amaterno"); //convertir a entero Edad=Integer.parseInt(request.getParameter("edad")); Direccion=request.getParameter("direccion"); Telefono=request.getParameter("telefono"); Email=request.getParameter("email"); Licenciatura=request.getParameter("licenciatura"); //asignar datos miProg2.setNombre(Nombre); miProg2.setApaterno(Apaterno); miProg2.setAmaterno(Amaterno); miProg2.setEdad(Edad); miProg2.setDireccion(Direccion); miProg2.setTelefono(Telefono); miProg2.setEmail(Email); miProg2.setLicenciatura(Licenciatura); out.println("<h2>Datos personales mediante un Java Bean</h2>"); //imprimir datos out.println("Nombre: <b>"+miProg2.getNombre()+"</b><br/>"); out.println("Apellido paterno: <b>"+miProg2.getApaterno()+"</b><br/>");
C贸digos nuevos out.println("Apellido materno: <b>"+miProg2.getAmaterno()+"</b><br/>"); out.println("Edad: <b>"+miProg2.getEdad()+"</b><br/>"); out.println("Direccion: <b>"+miProg2.getDireccion()+"</b><br/>"); out.println("Telefono: <b>"+miProg2.getTelefono()+"</b><br/>"); out.println("Email: <b>"+miProg2.getEmail()+"</b><br/>"); out.println("Licenciatura: <b>"+miProg2.getLicenciatura()+"</b><br/>");
}; %> </div> <br/> <a href="index.jsp" class="carraro" title="http://localhost:8080/pages/index.jsp">Regreso</a> </body></html> 19. C贸digos MySQL 1. Sentencias b谩sicas
show databases; create database sistema; use sistema; show tables; create table usuarios(nombre varchar(45),apaterno varchar(45), amaterno varchar(45), login text, pass text, id int not null auto_increment primary key)TYPE MySAM; desc sistema.usuarios; insert into sistema.usuarios values('Fernando','Carraro','Aguirre','ARICARRARO','0G6wS5T',1); select *from sistema.usuarios; select nombre, login, pass from sistema.usuarios; update sistema.usuarios set nomre='Ariel' where id=1; delete *from sistema.usuarios where id>1; 2. Procedimientos almacenados //Insertar DELIMITER $$ DROP PROCEDURE IF EXIST `sistema`.`Insertar`$$ CREATE PROCEDURE `sistema`.`Insertar`(in nombre varchar(45),apaterno varchar(45), amaterno varchar(45), login text, pass text, ident int) BEGIN /*DECLARE nombre varchar(45)*/ INSERT INTO usuarios VALUES (nombre ,apaterno , amaterno , login , pass , ident); END $$ DELIMITER ;
Códigos nuevos
//Borrar DELIMITER $$ DROP PROCEDURE IF EXIST `sistema`.`Borrar`$$ CREATE PROCEDURE `sistema`.`Borrar`(in ident integer) BEGIN DELETE FROM usuarios id_contacto=ident; END $$ DELIMITER ; //Actualizar DELIMITER $$ DROP PROCEDURE IF EXIST `sistema`.`Actualizar`$$ CREATE PROCEDURE `sistema`.`Actualizar`(in ident integer,nnombre varchar(45)) BEGIN UPDATE usuarios SET tnombre=nnombre WHERE id_contacto=ident; END $$ DELIMITER ; //Para invocar CALL Insertar('Fernando','Carraro','Aguirre','ARICARRARO',”xgtre453”,1); select *from sistema.usuarios; CALL Borrar(1); select *from sistema.usuarios; CALL Actualizar(1,'Uriel'); select *from sistema.usuarios;
Códigos Python 1. Factorial con funciones y diálogo ''' Crear una función para calcular el factorial ''' def Factorial(x): if x==0: return 1 else: return x * Factorial(x -1) #main numero=0 continuar='n' while continuar!='s': continuar=raw_input('¿Desea realizar el cálculo? Si->s No-n: ') print "Factorial de un numero"
C贸digos nuevos while numero<=0: numero=int(raw_input('Introduce numero:')) resultado=Factorial(numero) print "El factorial de %d es %d" %(numero,resultado) 2. C贸digos Batch Windows 1. Men煤 sencillo rem Autor Fernando Carraro Aguirre @echo off color F0 Title Menu cls :Menu Title Menu cls echo. echo. echo MENU DEL PROGRAMA echo. echo 1. Apagar echo 2. Reiniciar echo 3. Buscar en Internet echo 4. Salir echo. set /p menup=Escribe tu opcion: if %menup%==1 goto Apagar if %menup%==2 goto Reiniciar if %menup%==3 goto Buscar if %menup%==4 goto Salir :Apagar cls echo Para apagar sistema :Reiniciar cls echo Para reiniciar sistema pause
:Buscar cls echo Para buscar
C贸digos nuevos pause :Salir cls echo Saliste pause exit 2. Mensaje rem Autor Fernando Carraro Aguirre @echo off color 97 Title Programando en Batch Windows cls echo ========================== echo. echo Hola usuario de windows echo. echo ========================== pause exit 3. Opera b谩sica rem Autor Fernando Carraro Aguirre @echo off color 0d Title Programando en Batch Windows cls echo ========================== echo. echo Suma en Batch Windows echo. echo ========================== set /p nombre="Escribe tu nombre: " echo Hola %nombre% echo. set /p x="Introduce valor de x: " set /p y="Introduce valor de y: " echo. color d0 echo Valores leidos x= %x% , y= %y% rem suma set /a suma=%x%+%y% echo La suma es: %suma% pause exit