miércoles, 9 de noviembre de 2011
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
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
miércoles, 5 de octubre de 2011
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);
}
#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....
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....
miércoles, 24 de agosto de 2011
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
}
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
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
Suscribirse a:
Comentarios (Atom)