domingo, 18 de agosto de 2013

Calculadora en PHP

Nota: Aqui hay una versión reciente para descargar, poner en la carpeta del servidor y ejecutar.

!!! OjO !!! sin virus tanto para Linux como para Windows, ningún tipo de código malicioso.

Hola apreciado lector, en esta ocasión doy mano del lenguaje PHP para hacer una sencilla calculadora que se ejecuta en cualquier navegador, claro teniendo instalado un pequeño servidor local tipo APACHE, que bien podría estar instalado en el paquete XAMPP para Windows.

Estos scripts los puede ejecutar en un proyecto nuevo en la carpeta raíz de "localhost" bajo el nombre del proyecto Calculadora_clases.

Se trabajo con una clase llamada: calculadora.php y este es el script de esa clase

<?php

/**
 * Description of calculadora
 *
 * @author wilmer
 */
class calculadora {
    private $nu1;
    private $nu2;  
    function __construct($n1,$n2) {
        $this->nu1=$n1;
        $this->nu2=$n2;
    }
    function sumar() {
        return $this->nu1+$this->nu2;
    }
    function multiplicar() {
        return $this->nu1 * $this->nu2;
    }
    function restar(){
        return $this->nu1-$this->nu2;
    }
    function dividir(){
        if(($this->nu1>0)&&($this->nu2>0)){
            return $this->nu1/$this->nu2;
        }else{
            echo 'El dividendo o divisior debe ser superior a cero';
        }
    }
}
?>

para la pagina de index es este:

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>

        <table border="1">            
            <tr>
                <td>
                    <form action="index.php" method="POST">
                        <input type="text" value="CALCULADORA EN PHP" disabled 
                               style="background-color: black; color: #ffffff; font-size: x-large; width: 300px;" /><br/>
                        <label>Numero uno</label><input type="text" name="numero1" value="" /><br/>
                        <label>Numero dos</label><input type="text" name="numero2" value="" /><br/>            
                        <table>
                            <tr>
                                <td>
                                    <input type="submit" value="SUMAR" name="suma"/>
                                </td>
                                <td>
                                    <input type="submit" value="RESTAR" name="resta"/>
                                </td>
                                <td>
                                    <input type="submit" value="MULTIPLICAR" name="multiplicar"/>
                                </td>
                                <td>
                                    <input type="submit" value="DIVIDIR" name="dividir"/>
                                </td>
                            </tr>
                        </table>                            
                    </form>
                </td>
            </tr>               
            <tr>
                <td>
                    <input type="text" value="<?php
                    require 'calculadora.php';

                    if ($_POST['suma'] == 'SUMAR') {
                        $calSuma = new calculadora($_POST['numero1'], $_POST['numero2']);
                        echo $calSuma->sumar();
                    } elseif ($_POST['resta'] == 'RESTAR') {
                        $calResta = new calculadora($_POST['numero1'], $_POST['numero2']);
                        echo $calResta->restar();
                    } elseif ($_POST['multiplicar'] == 'MULTIPLICAR') {
                        $calMultiplicar = new calculadora($_POST['numero1'], $_POST['numero2']);
                        echo $calMultiplicar->multiplicar();
                    } elseif ($_POST['dividir'] == 'DIVIDIR') {
                        $calDividir = new calculadora($_POST['numero1'], $_POST['numero2']);
                        echo $calDividir->dividir();
                    }
                    ?>" style="width: 280px;"/>
                </td>
            </tr>
        </table>
    </body>
</html>

Por favor no olvide comentar...!!!

Aqui hay otra version usando clases con método GET, Javascript y css...espero le guste y si desea puede mejorarla y devolvermela.



martes, 16 de julio de 2013

Virus esconde carpetas en Windows

Carajo, otra vez...donde fueron a parar mis archivos...!!!

Eso me paso en varias ocasiones, hasta que encontré este ejecutable que con unas sencillas lineas puede hacer que los archivos ocultos reaparezcan en nuestro usb-portable.

Para ello siga estos pasos:

1. Copie estas lineas en un archivo nuevo en el "Bloc de notas"

@echo off
title VIRUS DE ACCESOS DIRECTOS
color 1E
@echo ----------------------------------------------
@echo REPARACION DE ARCHIVOS USB
@echo ----------------------------------------------
@echo Mostrando Carpetas
Attrib /d /s -r -h -s *.*
@echo ----------------------------------------------
@echo Eliminado Accesos Directos
if exist *.lnk del *.lnk
@echo ----------------------------------------------
@echo Eliminado Autorun
if exist autorun.inf del autorun.inf
@echo ----------------------------------------------
@echo PROCESO TERMINADO
@echo ----------------------------------------------
@echo ----------------------------------------------

así, tal cual, sin aumentarle ni quitarle (claro a menos que usted sepa de programación en CMD mas exactamente el antiguo MS-DOS)

2. Grabe el archivo con el nombre que desee, en un lugar identificable; pero guárdelo con la extensión .bat, por ejemplo:

quitarvirususb.bat

3. Haga una copia del nuevo archivo y pequela en la usb afectada, y ejecútelo como administrador dándole clic derecho y "Ejecutar como administrador"

4. Dele unos minutos mientras el archivo realiza las tareas necesarias y listo allí estarán sus archivos.

Nota: no me hago responsable de las consecuencias

lunes, 15 de julio de 2013

Recursos para un diseñador web

Para evaluar la combinación de colores:

https://kuler.adobe.com/create/color-wheel/?base=2&rule=Custom&selected=4&name=My%20Kuler%20Theme&mode=rgb&rgbvalues=1,0.8926645719993758,0,0.91,0.565237102737276,0,1,0.2095859508574449,0,0.91,0.01664313697927582,0.06570555888397796,1,0.035029480680180414,0.6260097128036046

Para observar la usabilidad de las las fuentes:

http://www.dafont.com/es/

http://www.fontsquirrel.com/

Teoria Gestalt

El todo es algo mas que la suma de sus partes, es decir que muestra una imagen a través de las partes que lo conforman.
* Patrones de diseño: comprender la aplicación
    * Proximidad: todos los grupos de elementos se perciben con su usabilidad(tienen relación con un tema)
    * Similaridad: todas las formas que tengan un color o forma parecida conforman una misma forma.
    * Buena continuidad: preferimos percibir contornos suaves a aquellos que cambian abruptamente.
    * Cerramiento: las formas se tienden a encerrar, el cerebro tiende a completar las formas siempre y cuando se le den algunos indicios.
    * Figura / fondo: tendencia a percibir todos los elementos como una figura.
    * Rodear. identificamos varias formas pero no sabemos cual es el fondo y cual la figura.
    * Área / pequeño: la figura pequeña tiene a salir dentro de la grande
    * Simetría:
    * Equilibro o pregnancia: que la disposición de los elementos sea clara para el usuario final.

Botones
Elementos que siempre deben estar presentes en las paginas web, se usan para cambiar de interfaz o cambiar de pagina.
Tipos :
 * Textuales. son los que aparecen en ventanas, solo texto
 * Iconicos: transmiten información a través de una imagen.
Sirven para interacción con la aplicación, los estilos pueden variar buscando que tengan una personalidad sin que sean folclóricos, pensando en una versatilidad.
Su funcionalidad en una pagina web es tan importante como su mensaje al pasar el puntero del mouse sobre el botón, falta por visitar, el lugar donde se esta, con estos estados se le da al visitante una información vital sobre el lugar de navegación en la pagina.

Iconografia
Descripción del tema o asunto representado en imágenes artísticas.
Usabilidad: es un método de interactivo con el usuario, puede ser que agrade al usuario o puede que no esto afecta la cantidad de visitas a la pagina. Buscamos que el usuario entienda de que se trata un tema acortando caminos con los iconos.
Debe ser lo mas sencillo posible, hay unos estándares a nivel mundial del tema y el icono representado por el tema asociado. Una de las ventajas es que hace ocupar menos espacio en el diseño de la pagina web.

El uso de ciertos criterios se usa en cierto tiempo y tiende a desaparecer para volver a ser usado en tiempos posteriores.

Para trabajar iconos puede ir esta pagina: http://www.iconfinder.com/
Para descargar familias de iconos: http://www.iconspedia.com/ la ventaja de usar familias de iconos tiene su base en la utilización de una pagina con cierto tema.
Lo recomendable para trabajo en web es el formato .png

Tipos de navegación
Un sistema de navegación son las herramientas que ayudan a un usuario a navegar en una pagina web en las diferentes secciones de la pagina.
La interacción es el dialogo existente entre el usuario y la pagina, debe ser concisa.
- Jerárquico: todo depende de un tema padre, el cual entrega una idea general del tema que contiene. Se usa para ver hacia abajo. Va de mayor importancia a menor importancia a través de niveles.
- Local: es usado cuando se tiene mucha información en la pagina, facilita la ubicación de elementos dentro de la pagina.
 - Especifico: se usa mas en las paginas de los periódicos, sugiriendo el uso de otras paginas para solución de las preguntas surgidas durante la navegación.
- Lineal: se obliga al usuario a seguir una secuencia.

Diseño de interfaz:
Conjunto de elementos representados para mostrar algo.
Principios
Dejar claro el propósito de la pagina.
Ayudar a los usuarios a encontrar lo que necesitan.
Demostrar el contenido del sitio.
Utilizar un diseño visual para mejorar la interacción del sitio.

Se visualizan en la parte de arriba de izquierda a derecha.

Sistemas de navegación:
Menú de secciones
Menú de rastros: es la parte donde se puede informar al usuario en cierta medida como llego a encontrar el elemento.
Menú se secciones. casi siempre esta situado en la parte superior o izquierda de la pagina
Botones de acción: botones para llevar a ciertas paginas o enlaces.
Pie de pagina. contiene información con respecto al contacto y los derechos de autor.

Áreas de contenido:
Zona de titulo, resumen e información.

Áreas de interacción. deben ser áreas especificas que indiquen el para que de la sección. Por ejemplo el ingreso al sistema.

martes, 9 de julio de 2013

Otra vez C Sharp

Esta es una calculadora que usa el try - catch, un ciclo do while y switch case ademas de otras cosillas que espero descubran...aquí el código:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            double a, b, resultado;
            int c;
            string dec;
            do{
                //----------------------------------INICIA PROGRAMA
                Console.Clear();
                empezar:
                try
                {
                    Console.WriteLine("Calculadora basica");
                    Console.Write("Digite el primer numero: ");
                    a = Convert.ToDouble(Console.ReadLine());
                    Console.Write("Digite el segundo numero: ");
                    b = Convert.ToDouble(Console.ReadLine());
                    Console.Write("Presione: \n 1 para Suma \n 2 para Resta \n 3 para Multiplicacion \n 4 para Division ");
                    c = Convert.ToInt32(Console.ReadLine());
                    switch (c)
                    {
                        case 1:
                            resultado = a + b;
                            Console.WriteLine("{0} + {1} : {2} ",a,b,resultado);
                            break;
                        case 2:
                            resultado = a - b;
                            Console.WriteLine("{0} - {1} : {2} " ,a,b,resultado);
                            break;
                        case 3:
                            resultado = a * b;
                            Console.WriteLine("{0} * {1} : {2} ", a, b, resultado);
                            break;
                        case 4:
                            if (b == 0)
                            {
                                Console.WriteLine("La division por cero no es posible");
                            }
                            else
                            {
                                resultado = a / b;
                                Console.WriteLine("{0} / {1} : {2} ", a, b, resultado);
                            }
                            break;
                    }
                }
                catch (Exception e)
                {
                    Console.Clear();
                    Console.Write("Debe digitar un numero, el programa se reiniciara (Presione Enter)"+ e.Message);
                    Console.ReadLine();
                    goto empezar;
                }
                //----------------------------------TERMINA PROGRAMA
                Console.Write("Continuar s/n: ");
                dec=Console.ReadLine();
            }while((dec=="s")||(dec=="S"));
        }
    }

sábado, 29 de junio de 2013

ACER Aspire one ZA3

Problema:

Al desconectar el cargador se apaga y se debe mover el conector del cargador a la board para que no se apague también.

Diagnostico:

Posible problema en la board,

Solución:
Se verifica el ajuste del conector de tensión en la board, encontrando que se encuentra en buen estado; se procede a verificar su conductividad y es buena, se procede a verificar la tensión de salida del cargador y se observa que se encuentra bien; 19.5v aprox.

Al observar dicho conector, se observa que el soporte de ese conecto tiene un juego que al conectar hace que el pc no reciba la tensión necesaria para funcionar.

Se procede a realizar el cambio del conector del cargador.

jueves, 27 de junio de 2013

CONCLIO

Control de Clientes Opticos, es una aplicacion que presta el servicio a los Optometras para llevar los datos de sus pacientes via web, teniendo como ventaja el acceso a dichos datos las 24 horas del dia, los 365 dias del año.


Si es usted una persona interesada en acceder a este servicio, por favor no dude en escribirme a:

http://de0a100.org/cursos/362720/wps/conclio/registrese.html


miércoles, 26 de junio de 2013

Instalar Apache, MySQL, PHP y PHPMyAdmin en Ubuntu 12.04

Primero tengo que decir que este video no es de mi autoria, segundo que por favor le saque el maximo provecho por que esta muy sustancioso.


Lo coloco en mi blog para no olvidar los pasos...jeje

miércoles, 29 de mayo de 2013

Ciclo for en Java, con Programación Orientada a Objetos

Definir un vector de 5 componentes de tipo float que representen las alturas de 5 personas.
Obtener el promedio de las mismas. Contar cuántas personas son más altas que el promedio y cuántas más bajas.
package alturas;
import java.util.Scanner;  
public class Alturas {
    private Scanner t;
    private float [] alturas;
    private float s=0,pro,summay=0,summen=0;       
    public void inicializar(){
        t=new Scanner(System.in);
        alturas=new float[5];
        for (int i = 0; i < alturas.length; i++) {           
            System.out.println("Ingrese la altura de la persona " + i);
            alturas[i]=t.nextInt();           
        }
    }   
    public void promedio(){
        for (int i = 0; i < alturas.length; i++) {
            s=s+alturas[i];           
        }
        pro=s/alturas.length;
        System.out.println("El promedio es " + pro);
    }   
    public void altbaj(){
        for (int i = 0; i < alturas.length; i++) {
            if(alturas[i]>pro){
                summay=summay+1;
            }else if(alturas[i]<pro){
                summen=summen+1;
            }        
        }
        System.out.println("La cantidad de personas mas altas al promedio: " + summay);
        System.out.println("La cantidad de personas menos altas al promedio: " + summen);
    }   
    public static void main(String[] args) {
        Alturas a= new Alturas();
        a.inicializar();
        a.promedio();
        a.altbaj();
    }
}
Desarrollar un programa que permita ingresar un vector de 8 elementos, e informe:
- El valor acumulado de todos los elementos del vector.
- El valor acumulado de los elementos del vector que sean mayores a 36.
- Cantidad de valores mayores a 50.
package programa;
import java.util.Scanner;
public class Programa {
    private Scanner t;
    private int[] vector;
    private int acum = 0,acum1=0,acum2=1;
    public void inicializar() {
        t = new Scanner(System.in);
        vector = new int[8];
        for (int i = 0; i < vector.length; i++) {
            System.out.println("Ingrese el numero " + i);
            vector[i] = t.nextInt();
        }
    }
    public void acumulado() {
        for (int i = 0; i < vector.length; i++) {
            acum = acum + vector[i];
            if ((vector[i]>=0)&&(vector[i]<=36)) {
                acum1=acum1+vector[i];
            } else if ((vector[i]>37)&&(vector[i]<=50)) {
                acum2++;
            }
        }
        System.out.println("El total de los elementos es: " + acum);
        System.out.println("Suma de los elementos mayores a 36 " + acum1);
        System.out.println("Cantidad de elementos mayores a 50 " + acum2);
    }
    public static void main(String[] args) {
        Programa p = new Programa();
        p.inicializar();
        p.acumulado();
    }
}
Realizar un programa que pida la carga de dos vectores numéricos enteros de 4 elementos. Obtener la suma de los dos vectores, dicho resultado guardarlo en un tercer vector del mismo tamaño. Sumar componente a componente.
package programa;

import java.util.Scanner;

public class Programa {

    private Scanner t;
    private int[] vector1;
    private int[] vector2;
    private int sum1 = 0, sum2 = 0, r;

    public void inicializar() {
        t = new Scanner(System.in);
        vector1 = new int[4];
        vector2 = new int[4];
        System.out.println("Llenado del vector 1");
        for (int i = 0; i < vector1.length; i++) {
            System.out.println("Ingrese el numero " + i);
            vector1[i] = t.nextInt();
        }
        System.out.println("Llenado del vector 2");
        for (int i = 0; i < vector2.length; i++) {
            System.out.println("Ingrese el numero " + i);
            vector2[i] = t.nextInt();
        }
    }

    public void operaciones() {
        for (int i = 0; i < vector1.length; i++) {
            sum1 = sum1 + vector1[i];
        }
        for (int i = 0; i < vector2.length; i++) {
            sum2 = sum2 + vector2[i];
        }
        r = sum1 + sum2;
        System.out.println("El resultado de la suma de los dos vectores es: " + r);
    }

    public static void main(String[] args) {
        Programa p = new Programa();
        p.inicializar();
        p.operaciones();
    }
}
Se tienen las notas del primer parcial de los alumnos de dos cursos, el curso A y el curso B, cada curso cuenta con 5 alumnos.
Realizar un programa que muestre el curso que obtuvo el mayor promedio general.
package alumnos;
import java.util.Scanner;

public class Alumnos {
    private Scanner t;
    private int []cursoa;
    private int []cursob;
    private int s1=0,s2=0;
   
    public void inicializar(){
        t=new Scanner(System.in);
        cursoa=new int[5];
        cursob=new int[5];
        System.out.println("Notas curso A ");
        for (int i = 0; i < cursoa.length; i++) {
            System.out.print("Ingrese la nota del alumno numero "+i +" :");           
            cursoa[i]=t.nextInt();
        }
        System.out.println("Notas curso B ");
        for (int i = 0; i < cursob.length; i++) {
            System.out.print("Ingrese la nota del alumno numero "+i +" :");           
            cursob[i]=t.nextInt();
        }
    }
    public void promedio(){
        for (int i = 0; i < cursoa.length; i++) {
            s1=s1+cursoa[i];           
        }
        for (int i = 0; i < cursoa.length; i++) {
            s2=s2+cursob[i];           
        }       
        if(s1>s2){
            System.out.println("El curso que obtuvo mayor promedio fue el A");
        }else{
            System.out.println("El curso que obtuvo mayor promedio fue el B");
        }
    }
    public static void main(String[] args) {
        Alumnos a =new Alumnos();
        a.inicializar();
        a.promedio();
    }
}

Declaración de una clase y definición de objetos en Java

En esta ocasión vamos a ver como trabajamos con la definición de clases y la creación de objetos,
el primer ejemplo es:
Confeccionar una clase que permita carga el nombre y la edad de una persona. Mostrar los datos cargados. Imprimir un mensaje si es mayor de edad (edad>=18):
package javayaej1;
import java.util.Scanner;
public class Javayaej1 {
    //declaracion de los atributos de la clase
    private Scanner t;
    private String nombre;
    private int edad;   
    // metodo para inicializar las variables
    public void inicializar(){
        t=new Scanner(System.in);//creacion del objeto t de la clase Scanner
        System.out.println("Ingrese su nombre: ");
        nombre=t.next();       
        System.out.println("Ingrese su edad: ");
        edad=t.nextInt();       
    }
    // metodo para retornar los valores
    public void mayorOmenor(){
        if(edad>18){
            System.out.println(nombre + " Es mayor de edad , con " + edad + " años");
        }else{
            System.out.println(nombre + " Es menor de edad , con " + edad + " años");
        }
    }   
    public static void main(String[] args) {
        // creacion del objeto persona de la clase Javayaej1       
        Javayaej1 persona = new Javayaej1();
        //llamado de los metodos del objeto persona    
        persona.inicializar();//llamado al metodo inicializar       
        persona.mayorOmenor();//llamado al metodo mayoOmenor
    }
}
Otro ejemplo:
Desarrollar un programa que cargue los lados de un triángulo e implemente los siguientes métodos: inicializar los atributos, imprimir el valor del lado mayor y otro método que muestre si es equilátero o no.
package javayaej1;
//llamado de la triangulo Scanner
import java.util.Scanner;
public class triangulo {
    //declaracion de los atributos
    private Scanner t;
    private int ld1,ld2,ld3;
    //declaracion del metodo inicializar
    public void inicializar(){
        t=new Scanner(System.in);
        System.out.println("Ingrese la medida del lado 1: ");
        ld1=t.nextInt();
        System.out.println("Ingrese la medida del lado 1: ");
        ld2=t.nextInt();
        System.out.println("Ingrese la medida del lado 1: ");
        ld3=t.nextInt();
    }
    //declaracion del metodo para probar si es triangulo equilatero   
    public void equilatero(){
        if((ld1==ld2)&&(ld1==ld3)){
            System.out.println("Es un triangulo equilatero");
        }else{
            System.out.println("No es un triangulo equilatero");
        }
    }   
    public void ladoMayor(){
        if((ld1>ld2)&&(ld1>ld3)){
            System.out.println("El lado mayor es: " + ld1);
        }else if(ld2>ld3){
            System.out.println("El lado mayor es: " + ld2);
        }else{
            System.out.println("El lado mayor es: " + ld3);
        } 
    }
    public static void main(String[] args) {
        //creacion del objeto tri
        triangulo tri = new triangulo();
        //se llama los metodos de la clase tri
        tri.inicializar();
        tri.equilatero();      
        tri.ladoMayor();
    }   
}
Otro ejemplo:
Desarrollar una clase que represente un punto en el plano y tenga los siguientes métodos: cargar los valores de x e y, imprimir en que cuadrante se encuentra dicho punto (concepto matemático, primer cuadrante si x e y son positivas, si x<0 e y>0 segundo cuadrante, etc.)
package punto;
//llamado de la clase Scanner
import java.util.Scanner;
public class Punto {
    //declaracion de los atributos
    private Scanner t;
    private int pX,pY;   
    //metodo inicializador   
    public void inicializar(){
        t=new Scanner(System.in);
        System.out.println("Ingrese la cordenada en X: ");
        pX=t.nextInt();
        System.out.println("Ingrese la cordenada en Y: ");
        pY=t.nextInt();
    }   
    //metodo para imprimir y tomar una decision
    public void retornarCuadrante(){
        if((pX>0)&&(pY>0)){
            System.out.println("El punto esta en el Cuadrante 1 ");
        } else if((pX<0)&&(pY>0)){
            System.out.println("El punto esta en el Cuadrante 2 ");
        } else if((pX<0)&&(pY<0)){
            System.out.println("El punto esta en el Cuadrante 3 ");
        } else if((pX>0)&&(pY<0)){
            System.out.println("El punto esta en el Cuadrante 4 ");
        }       
    }   
    public static void main(String[] args) {
        //instancia p de la clase Punto
        Punto p= new Punto();
        //llamado de los metodos
        p.inicializar();
        p.retornarCuadrante();
    }
}
Otro ejemplo:
Desarrollar una clase que represente un Cuadrado y tenga los siguientes métodos: cargar el valor de su lado, imprimir su perímetro y su superficie.
package Cuadrado;
//llamado de la clase Scanner
import java.util.Scanner;
public class Cuadrado {
    //declaracion de los atributos de la clase Cuadrado
    private Scanner t;
    private int l,pe,ar;   
    public void inicializar(){
        t = new Scanner(System.in);
        System.out.println("Ingrese el valor del lado: ");
        l=t.nextInt();
    }   
    public void calcular(){
        ar=l*l;
        System.out.println("El area del cuadrado es: " + ar);
        pe=4*l;
        System.out.println("El perimetro del cuadrado es: "+ pe);
    }  
    public static void main(String[] args) {
       Cuadrado cu= new Cuadrado();
       cu.inicializar();
       cu.calcular();
    }
}
Otro ejemplo:
Confeccionar una clase que represente un empleado. Definir como atributos su nombre y su sueldo. Confeccionar los métodos para la carga, otro para imprimir sus datos y por último uno que imprima un mensaje si debe pagar impuestos (si el sueldo supera a 3000)
package empleado;
import java.util.Scanner;
public class Empleado {
    private Scanner t;
    private String nombre;
    private int sueldo;   
    public void inicializar(){
        t=new Scanner(System.in);
        System.out.println("Digite el nombre del empleado: ");
        nombre=t.next();
        System.out.println("Digite el sueldo: ");
        sueldo=t.nextInt();
    }   
    public void imprimir(){
        System.out.print("El empleado " + nombre+ " gana "+ sueldo);
    }   
    public void pagarImp(){
        if(sueldo>3000){
            System.out.print(" y debe pagar impuestos ");
        }else{
            System.out.print(" y no debe pagar impuestos ");
        }
    }
    public static void main(String[] args) {
        Empleado emp1 = new Empleado();       
        emp1.inicializar();
        emp1.imprimir();
        emp1.pagarImp();
    }
}
Otro ejemplo:
Implementar la clase operaciones. Se deben cargar dos valores enteros, calcular su suma, resta, multiplicación y división, cada una en un método, imprimir dichos resultados.
package operaciones;
import java.util.Scanner;
public class Operaciones {
    private Scanner t;
    private int v1, v2;
    private double div;
    public void inicializar() {
        t = new Scanner(System.in);
        System.out.println("Ingrese el primer valor: ");
        v1 = t.nextInt();
        System.out.println("Ingrese el segundo valor: ");
        v2 = t.nextInt();
    }
    public int suma() {
        return v1 + v2;
    }
    public int resta() {
        return v1 - v2;
    }
    public int multiplicacion() {
        return v1 * v2;
    }
    public void divison() {
        if (v2 == 0) {
            System.out.println("La division por cero no es posible");
        } else {
            div = v1 / v2;
            System.out.println("La division da: " + div);
        }
    }
    public static void main(String[] args) {
        Scanner teclado = new Scanner(System.in);
        Operaciones op = new Operaciones();
        String dec;
        do {
            op.inicializar();
            System.out.println(" Para suma presione 1 \n Para resta presione 2 \n Para multiplicacion presione 3 \n Para division presione 4");
            System.out.println("Elija una operacion: ");
            int n = teclado.nextInt();
            switch (n) {
                case 1:
                    System.out.println("La suma da: " + op.suma());
                    break;
                case 2:
                    System.out.println("La resta da: " + op.resta());
                    break;
                case 3:
                    System.out.println("La multiplicacion da: " + op.multiplicacion());
                    break;
                case 4:
                    op.divison();
                    break;
            }
            System.out.println("Continuar: S/N");
            dec = teclado.next();
        } while (("s".equals(dec)) || ("S".equals(dec)));
    }
}

Clasicos en Java - Ciclo Do While -

1. Realizar un programa que acumule (sume) valores ingresados por teclado hasta ingresar el 9999 (no sumar dicho valor, indica que ha finalizado la carga). Imprimir el valor acumulado e informar si dicho valor es cero, mayor a cero o menor a cero.
 Scanner t = new Scanner(System.in);
        int num,acumulador=0;      
        System.out.println("Para terminar el programa digite 99999");      
        do{
            System.out.println("Indique un numero: ");
            num=t.nextInt();   
            if(num<99999){                 
            acumulador=acumulador+num;
            }else{
                System.out.println("El programa termino");
            }
        }while(num<99999);
      
        if(acumulador==0){
            System.out.println("El valor acumulado es igual a 0");
        }else if(acumulador>0){
            System.out.println("El valor acumulado es mayor a 0 ");
        }else{
            System.out.println("El valor acumulado es menor a 0");
        }
        System.out.println("El total de la suma de los numeros es: " + acumulador);
2. En un banco se procesan datos de las cuentas corrientes de sus clientes. De cada cuenta corriente se conoce: número de cuenta y saldo actual. El ingreso de datos debe finalizar al ingresar un valor negativo en el número de cuenta.
Se pide confeccionar un programa que lea los datos de las cuentas corrientes e informe:
a)De cada cuenta: número de cuenta y estado de la cuenta según su saldo, sabiendo que:

Estado de la cuenta 'Acreedor' si el saldo es >0.
   'Deudor' si el saldo es <0.
   'Nulo' si el saldo es =0.
b) La suma total de los saldos acreedores.
Scanner t = new Scanner(System.in);
        int numCuenta,acumulador=0,saldo; 
        do{
            System.out.print("Introduzca el numero de cuenta: ");
            numCuenta=t.nextInt();
           
            System.out.print("Introduzca el saldo actual: ");
            saldo=t.nextInt();
           
            if(saldo>0){
                acumulador=acumulador+saldo;
                System.out.println("Es un acreedor");
            }else if(saldo<0){
                System.out.println("Es un deudor");
            }else{
                System.out.println("Esta nulo");
            }
        }while(numCuenta>0);
        System.out.println("El total de saldos acreedores es: " +acumulador);

jueves, 23 de mayo de 2013

Clásicos en JAVA - Ciclo For -

1. Realizar un programa que imprima en pantalla los números del 1 al 100:
        int x;        
        for(x=1;x<=100;x++){
            System.out.print(x+" ♥ ");
        }
2. Desarrollar un programa que permita la carga de 10 valores por teclado y nos muestre posteriormente la suma de los valores ingresados y su promedio:
Scanner teclado = new Scanner(System.in);                
        int x,suma=0;        
        
        for(x=1;x<=10;x++){
            System.out.println("Ingrese un numero: ");
            int n=teclado.nextInt();
            suma=suma+n;
        }
        
        System.out.println("La suma es: " + suma);
3. Desarrollar un programa que permita la carga de 10 valores por teclado y nos muestre posteriormente la suma de los valores ingresados y su promedio:
Scanner teclado = new Scanner(System.in);
        int x, suma = 0;
        double prom;

        for (x = 1; x <= 10; x++) {
            System.out.print("Ingrese un numero: ");
            int n = teclado.nextInt();
            suma = suma + n;            
        }        
        prom = suma /(x-1);
        System.out.println("La suma es: " + suma);
        System.out.println(prom+" Es el promedio");
4. Encontrar los números divisores de un numero cualquiera:

Scanner teclado = new Scanner(System.in);
        int x, cont1 = 0, cont2 = 0, num1, num2;
        System.out.println("PROGRAMA QUE INDICA LOS 'NUMEROS DIVISORES' DE DOS NUMEROS");
        System.out.print("Indique el primer numero: ");
        num1 = teclado.nextInt();
        System.out.print("Indique el segundo numero: ");
        num2 = teclado.nextInt();
        System.out.println("-----------------------------------");        
        for (x = 1; x <= num1; x++) {
            if (num1 % x == 0) {
                cont1 = cont1 + 1;
                System.out.print( cont1 + " ");
            }
        }
        System.out.println(" Son los divisores de "+ num1);
        System.out.println("-----------------------------------");
        for (int i = 1; i < num2; i++) {
            if (num2 % i == 0) {
                cont2 = cont2 + 1;
                System.out.print(cont2 + " ");                
            }
        }
        System.out.println(" Son los divisores de " + num2);
5. Confeccionar un programa que lea n pares de datos, cada par de datos corresponde a la medida de la base y la altura de un triángulo. El programa deberá informar:
a) De cada triángulo la medida de su base, su altura y su superficie. 
b) La cantidad de triángulos cuya superficie es mayor a 12.


Scanner t = new Scanner(System.in);
        int contador = 0, b, h, s;
        System.out.print("Cuantos triangulos va a medir: ");
        int ct = t.nextInt();
        for (int i = 1; i < ct + 1; i++) {
            System.out.print("Ingrese la base del triangulo " + i + ": ");
            b = t.nextInt();
            System.out.print("Ingrese la altura del triangulo " + i + ":");
            h = t.nextInt();
            s = (b * h) / 2;
            System.out.println("Del triangulo " + i + " \n Su base es       :" + b + " \n Su altura es     :" + h + " \n Su superficie es :" + s);
            if (s >= 12) {
                contador = contador + 1;
            }
        }
        System.out.println("La cantidad de triangulos con superficie superior a 12 es " + contador);
6. Desarrollar un programa que muestre la tabla de multiplicar del 5 (del 5 al 50)

int b=0;   
        for (int i = 5; i < 55; i=i+5) {           
            b=b+1;
            System.out.println("5"+" x "+b+ " = "+i+ " ");
        } 
7. Las tablas de multiplicar hasta el numero que necesite

Scanner t = new Scanner(System.in);
        int b,c;
        System.out.println("Las tablas de multiplicar hasta el : ");
        b=t.nextInt();
        for (int i = 0; i <= b; i++) {
            for (int j = 0; j <= 10; j++) {
                c = j * i;
                System.out.println(i + " x " + j + " = " + c);
            }
            System.out.println();
        }
8. Se realiza la carga de 10 valores enteros por teclado. Se desea conocer: a) La cantidad de valores ingresados negativos. b) La cantidad de valores ingresados positivos. c) La cantidad de múltiplos de 15. d) El valor acumulado de los números ingresados que son pares.
Scanner t = new Scanner(System.in);
        int cont1=0,cont2=0,cont3=0,cont4=0;      
        for (int i = 0; i < 10; i++) {
            System.out.println("Ingrese el numero: " + i);
            int n= t.nextInt();          
            if(n<0){
                cont1=cont1+1;              
            }          
            if(n>0){
                cont2=cont2+1;              
            }          
            if(15%n==0){
                cont3=cont3+1;
            }          
            if(n%2==0){
                cont4=cont4+1;
            }
        }      
        System.out.println("Cantidad valores negativos " + cont1);
        System.out.println("Cantidad valores positivos " + cont2);
        System.out.println("Cantidad multiplos de 15 " + cont3);
        System.out.println("Cantidad numeros pares " + cont4);
9.





miércoles, 22 de mayo de 2013

Clásicos en JAVA - Ciclo While -

1. Realizar un programa que imprima en pantalla los números del 1 al 100.


 int x=0;
        while(x<100){
            x=x+1;
            System.out.println(x);
        }

2. Escribir un programa que solicite la carga de un valor positivo y nos muestre desde 1 hasta el valor ingresado de uno en uno.



int x=0;
        System.out.println("ingrese un numero");
        int numero=teclado.nextInt();
        
        while(x<numero){
            x=x+1;
            System.out.println(x);
        }

3. Desarrollar un programa que permita la carga de n valores por teclado y nos muestre posteriormente la suma de los valores ingresados y su promedio.

Scanner teclado = new Scanner(System.in);
        int x = 0;
        int total = 0;        
        System.out.println("cuantos numeros va a sumar");
        int totalnumeros = teclado.nextInt();
        while (x < totalnumeros) {
            System.out.print("Numero "+x+" :");
            int numingresado = teclado.nextInt();
            x = x + 1;
            total = total + numingresado;
        }
        int promedio=total/x;        
        System.out.println("La suma de los numeros es: "+total);
        System.out.println("El promedio de los numeros es: "+promedio);

4. Una planta que fabrica perfiles de hierro posee un lote de n piezas.
Confeccionar un programa que pida ingresar por teclado la cantidad de piezas a procesar y luego ingrese la longitud de cada perfil; sabiendo que la pieza cuya longitud esté comprendida en el rango de 1,20 y 1,30 son aptas. Imprimir por pantalla la cantidad de piezas aptas que hay en el lote.

Scanner teclado = new Scanner(System.in);        
        int contador=0;
        int cantPiezas=0;
        double medidaPieza;        
        System.out.println("cuantos piezas va a valorar: ");
        int numPiezas=teclado.nextInt();        
        while (contador<numPiezas) {
            System.out.println("Ingrese la medida de la pieza");
            medidaPieza=teclado.nextInt();
            contador=contador+1;
            if((medidaPieza>=120)&&(medidaPieza<=130)){
                cantPiezas=cantPiezas+1;
            }                    
        }        
        System.out.println("La cantidad de piezas aptas: " + cantPiezas);        

5. Programa que solicite ingresar 10 notas de alumnos y nos informe cuántos tienen notas mayores o iguales a 7 y cuántos menores


Scanner teclado = new Scanner(System.in);
        int notaAlumno;
        int contador = 1;
        int cantAlumnos=0;
        while (contador <= 10) {
            System.out.println("Ingrese la nota del alumno numero " + contador + " :");
            notaAlumno = teclado.nextInt();
            contador = contador + 1;
            if (notaAlumno>=7) {
                cantAlumnos=cantAlumnos+1;
            }            
        }
        System.out.println("La cantidad de alumnos con notas mayores o iguales a 7 es: " + cantAlumnos);

6. Se ingresan un conjunto de n alturas de personas por teclado. Mostrar la altura promedio de las personas.


Scanner teclado = new Scanner(System.in);        
        int numeroAlturas;
        int contador=0;
        int altpersona;
        int suma=0;
        int promedio;        
        System.out.println("Cuantas alturas va a contar: ");
        numeroAlturas=teclado.nextInt();        
        while (contador < numeroAlturas) {
            System.out.println("Ingrese la altura de la persona numero " + contador + " :");
            altpersona=teclado.nextInt();
            contador=contador+1;            
            suma=suma+altpersona;
        }
        promedio=suma/contador;        
        System.out.println("La altura promedio de las personas es: " + promedio);

7. Desarrollar un programa que permita cargar n números enteros y luego nos informe cuántos valores fueron pares y cuántos impares.
Emplear el operador ?%? en la condición de la estructura condicional:
 if (valor%2==0)         //Si el if da verdadero luego es par.

Scanner teclado = new Scanner(System.in);        
        int cantNum,contador=0,numIngresado,cantPares=0,cantImpares=0;        
        System.out.println("Cuantos numeros enteros va a ingresar: ");
        cantNum=teclado.nextInt();        
        while (contador < cantNum) {
            System.out.println("Ingrese el numero: ");
            numIngresado=teclado.nextInt();
            contador=contador+1;
            if(numIngresado%2==0){
                cantPares=cantPares+1;
            }else{
                cantImpares=cantImpares+1;
            }
        }
        System.out.println("Cantidad pares: "+cantPares);
        System.out.println("Cantidad impares: "+cantImpares); 


sábado, 18 de mayo de 2013

Programación Orientada a Objetos en PHP

Bueno, que les puedo contar sobre este tema, pues me parece bastante sencillo y voy a tratar de explicarlo con este pequeño ejemplo:

haber!!!

aquí iniciamos el documento html...por cierto en HTML 5

<!DOCTYPE html>

<html>
la cabeza del documento
<head>
el título de la página
 <title> Practica de creación de objetos </title>
un vinculo a una hoja de estilos, esos están al finalizar la este articulo
      <link type='text/css' rel='stylesheet' href='style.css'/>
el cierre de la etiqueta head o cabeza
</head>
el inicio de la etiqueta body
<body>
apertura de un párrafo
      <p>
        inicio del código php
        <?php
        declaración de la clase
        class Dog{
declaración de los atributos de la clase
            public $numLegs=4;
            public $name;

constructor que inicializa las variables, osea los atributos. Tiene un parámetro llamado nombre que se inicializa o relaciona con el atributo $name con la palabra reservada $this al parámetro del constructor.  
      
            public function __construct($nombre){
                $this->name=$nombre;
            }
este método retorna una cadena de texto      
            public function bark(){
                echo "Woof! ";
            }

este también  pero ojo, aquí se accede a través de la palabra reservada $this al atributo name de la clase

            public function greet(){
                echo "Hola humano mi nombre es:".$this->name;
            }          
        }      
El cierre de los corchetes si se lo dejo para que analise donde empiezan y donde terminan, eso es importante tenerlo presente.

Aquí se crea una instancia de la clase Dog, la primera es $dog1, y la segunda es $dog2. Ahh...!!! Recuerda que en el constructor se relaciono el $nombre con el $name a través de la palabra reservada $this->, pues aquí le colocamos directamente ese parámetro.

        $dog1=new Dog("Barker");
        $dog2=new Dog("Amigo");
       
Ahora, con el objeto creado, accedemos a los métodos de la clase.

        $dog1->bark();
        $dog2->greet();

De aqui para abajo se cierran las etiquetas que abrimos arriba.
        ?>
      </p>
    </body>
</html>

Fácil no?...bueno espero le haya servido de algo.

Aquí esta la hoja de estilos


p {
    color: #8B4513;
    font-size: 20px;
}