miércoles, 9 de noviembre de 2011

Clases en php (Basico)

http://ar.php.net/manual/es/language.oop5.basic.php

martes, 25 de octubre de 2011

Ejemplo de una relacion Entidad-Tabla














class Persona {

// Declaración de la propiedad
private $id;
private $nombre;
private $apellido;

public function SetId($parm) {
$this->id = $parm;
}

public function SetNombre($parm) {
$this->nombre = $parm;
}

public function SetApellido($parm) {
$this->apellido = $parm;
}

public function GetId($parm) {
return $this->id;
}

public function GetNombre($parm) {
return $this->nombre;
}

public function GetApellido($parm) {
return $this->apellido;
}

public function Save() {
$con = mysql_connect("localhost", "");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("database1", $con);
mysql_query("INSERT INTO persona (id, nombre, apellido)
VALUES ($this->id, '$this->nombre', '$this->apellido')");
mysql_close($con);
}

}
if(isset($_POST["Id"])&& isset($_POST["Nombre"]) && isset($_POST["Apellido"]))
{
$personaAux= new Persona();
$personaAux->SetId($_POST["Id"]);
$personaAux->SetNombre($_POST["Nombre"]);
$personaAux->SetApellido($_POST["Apellido"]);
$personaAux->Save();
}

?>

Ejercicio 2 del taller

El ejericio consta de un pequeño kiosko donde se podrán ingresan movimientos, es decir, ingreso y egreso de productos, para ello se utilizaran las siguientes tablas: Productos, Movimientos, MovimientosDetalle, en donde productos seran caramelos, chupetines, etc. y Movimientos y MovimientosDetalle será, los detalles del movimiento respectivamente, fecha, cantidad de productos, etc. los campos a utilizar serán los siguientes (*)

Productos: id, descripcion, precio
Movimientos: id, observaciones, fecha
MovimientosDetalle: MovimientosId, ProductosId, id, cantidad de productos

Se tendra que crear una transaccion en donde pueda dar de alta, modificar y eliminar, por un lado los productos y por otro lado el Movimiento con sus detalles, cada tabla tendrá que ser representada por una Clase y para gabar, elimininar y editar la clase deberá tener los metodos correspondientes Grabar(), Eliminar() y Editar().

*Sujeto a cambios

jueves, 8 de septiembre de 2011

Ejemplo de como armar un arbol familiar e imprimirlo usando recursividad

#include
#include
#include

using namespace std;

/*
*
*/
struct Persona
{
char nombre[30];
char apellido[30];
struct Persona *hijo;
};

void ShowTree(struct Persona persona, int level)
{
for(int i=0;i<=level;i++)
{
printf("--");
}
printf("%s %s \n ",persona.nombre, persona.apellido);
if(persona.hijo!=NULL)
{
struct Persona hijo=*persona.hijo;
ShowTree(hijo,++level);
}
}

int main(int argc, char** argv) {
struct Persona padre;
struct Persona hijo;
struct Persona nieto;
padre.hijo=&hijo;
hijo.hijo=&nieto;

strncpy(padre.nombre,"Juan",30);
strncpy(padre.apellido,"Perez",30);

strncpy(hijo.nombre,"Juan Jr",30);
strncpy(hijo.apellido,"Perez",30);

strncpy(nieto.nombre,"Juan Jr Jr",30);
strncpy(nieto.apellido,"Perez",30);

ShowTree(padre,0);
}

martes, 6 de septiembre de 2011

Guia de ejercicos del taller

1- Escriba un programa que dándole el importe exacto de una cantidad te indica el mínimo número de monedas/billetes que podrías tener. Las monedas/billetes son de 0.05 cts, 0.10 cts, 0.25 cts, 0.50 cts, 1 peso , 2 pesos y 5 pesos .

2. Escriba un programa que ordene un vector (de dimensión máxima 15) por el método de la burbuja.




3. Escriba un programa en lenguaje C que solicite al usuario ingresar 16 números
los que corresponden a una matriz de 4x4, se pide calcular la suma de:
a. Diagonal principal.
b. Diagonal secundaria.
c La primera y última fila.
d La primera y última columna.

4.Escribir una pequeña calculadora, donde el usuario ingrese que operación quiere realizar: multiplicación, división, suma y resta. Optativo raiz cuadrada y potencia

5. Crear un programa que nos muestre si una palabra es un palindromo

6 Crear un programa de gestion de un cine, donde la sala tiene que tener 30 asientos (3 filas de 10) en el cual tendremos las siguientes opciones
a. ingresar butaca
b. eliminar butaca
c. ver asientos
d. salir

7 Crear un programa parecido al juego Batalla naval, donde habrá 2 jugadores con un tablero de 10X10 con 5 barcos, de un solo casillero. El juego comenzará ingresando los barcos del jugador 1 y luego del 2, en cada turno por pantalla se mostrara los lugares ya “atacados” y los barcos hundidos

8 Crear un programa que te diga si un numero es primo

9 Utilizando punteros y structs crear un programa que arme un árbol genealógico, donde por cada persona los datos serán, nombre, apellido y como máximo 2 hijos y 2 hijos políticos, permitirle al usuario ingresar un familiar en cualquier posición del árbol y poder imprimir por pantalla el árbol

10 en desarrollo....

martes, 23 de agosto de 2011

Operadores

Operadores aritméticos


Nombre del operador Sintaxis
Más unitario +a
Suma a + b
Preincremento ++a
Postincremento a++
Asignación con suma a += b
Menos unitario (negación) -a
Resta a - b
Predecremento --a
Postdecremento a--
Asignación con resta a -= b
Multiplicación a * b
Asignación con multiplicación a *= b
División a / b
Asignación con división a /= b
Módulo (Resto) a % b
Asignación con módulo a %= b


Ejemplos:

a=a+b esto es igual a a+=b
a=a-b esto es igual a a-=b

etc...

Operadores logicos

Menor que a < b
Menor o igual que a <= b
Mayor que a > b
Mayor o igual que a >= b
No igual que a != b
Igual que a == b
Negación lógica !a
AND lógico a && b
OR lógico a || b

Ejemplos

int a=5;
int b=6;

if(a{
//a es menor a b, pasara por aca
}

if(a<=b)
{
//a es menor a b, pasara por aca
}

if(a>=b)
{
//a es menor a b, no pasara por aca
}

....

if(a!=b)
{
//a es distinto a b, pasara por aca
}

if(a>3 && a<6)
{
// a es mayor a 3 "Y" a es menor a 6
}

if(a<6 || a>25)
{
// a es menor a 6 o mayor a 25
}

bool c=true;
if(!c)
{
//c es true, !c es false, no pasara por aca
}

viernes, 19 de agosto de 2011

C: Tipos de datos

TIPO DATO ESPACIO MEMORIA RANGO

unsigned char 8 bits 0 a 255

char 8 bits -128 a 127

short int 16 bits -32,768 a 32,767

unsigned int 32 bits 0 a 4,294,967,295

int 32 bits -2,147,483,648 a 2,147,483,647

unsigned long 32 bits 0 a 4,294,967,295

enum 16 bits -2,147,483,648 a 2,147,483,647

long 32 bits -2,147,483,648 a 2,147,483,647

float 32 bits 3.4 x 10-38 a 3.4 x 10+38(6 dec)

double 64 bits 1.7 x 10-308 a 1.7*10+308(15 dec)

long double 80 bits 3.4 x 10-4932 a 1.1 x 10+4932