28 noviembre 2006

Problemas resueltos

1.- Realice el siguiente programa:

En una escuela se requiere tener control de todos sus alumnos (10) . Para ello se necesita realizar un programa que guarde el nombre del alumno y las calificaciones de 3 materias


El programa tendrá el siguiente menú:


1.- Alta (Dar de alta un alumno y las calificaciones de las tres materias)

2.- Mostrar datos (Mostrar a todos los alumnos con sus 3 calificaciones y el promedio por alumno)

3.- Búsqueda (Buscar por nombre de alumno y modificar las tres calificaciones)

4.- Salir

Ejemplos:

En la captura:

Nombre del alumno: Martha Sánchez

Matemáticas: 10

Física: 10

Algebra: 10

Nombre del alumno: Roberto Carlos

Matemáticas: 8

Física: 9

Algebra: 10

Al mostrar la información

Nombre del alumno: Martha Sánchez

Matemáticas: 10

Física: 10

Algebra: 10

Promedio: 10

Nombre del alumno: Roberto Carlos

Matemáticas: 8

Física: 9

Algebra: 10

Promedio: 9


static void main () {

string[] nombre = new string [10];
string[] materias = new string [] {"matematicas","algebra","programacion"}
string busqueda;
int [,] calif = new int [10,3];
int opc, x=0,suma=0;

do {

Console.WriteLine ("1....... Altas");
Console.WriteLine ("2........Mostrar");
Console.WriteLine ("3........Modificar");
Console.WriteLine ("4........Salir");
opc = int.Parse(Console.ReadLine());
switch (opc)
{
case 1:
Console.WriteLine ("Nombre: ");
nombre[x] = Console.ReadLine();
for (int y=0;y<3;y++) k="0;k<3;y++) suma="0;" busqueda =" Console.ReadLine" k="0;k<4);>

2.- Realice el siguiente programa:

En una bodega se requiere tener control de todas las piezas en ella contenida (10). Para ello se necesita realizar un programa que guarde el nombre del artículo, cantidad de piezas, precio unitario y el dueño de los artículos.

El programa tendrá el siguiente menú:

1.- Alta (Dar de alta un artículo cantidad de piezas y el dueño)

2.- Mostrar datos (Mostrar todos los artículos y sus datos, como también el valor total de las piezas almacenadas. Valor total = cantidad * Precio unitario.)

3.- Búsqueda (Buscar por nombre de articulo y modificar cantidad de piezas)

4.- Salir

Ejemplos:

En la captura:

Nombre del artículo: Estufa

Cantidad: 10

Precio unitario: 4500.75

Dueño: Mueblería Alexia

Nombre del artículo: Bocinas Bose

Cantidad: 200

Precio unitario: 3000.00

Dueño: Electra

Al mostrar la información

Nombre del artículo: Estufa

Cantidad: 10

Precio unitario: 4500.75

Dueño: Mueblería Alexia

Valor Total: $ 45007.50

Nombre del artículo: Bocinas Bose

Cantidad: 200

Precio unitario: 3000.00

Dueño: Electra

Valor Total: $ 600000.00



//**************************** Programa 2
static void main ()
{
string[] nombre = new string[10];
string busqueda;
string[] owner = new string[10];
int[] cantidad = new int [10];
float[] Punit = new float [10];
double Ptot;
int opc=0,x=0, y=0,k=0;

do {
Console.WriteLine ("1....... Altas");
Console.WriteLine ("2........Mostrar");
Console.WriteLine ("3........Modificar");
Console.WriteLine ("4........Salir");
opc = int.Parse(Console.ReadLine());
switch (opc){

case 1:
Console.WriteLine ("Nombre: ");
nombre[x] = Console.ReadLine();
Console.WriteLine ("Cantidad: ");
cantidad[x]=int.Parse (Console.ReadLine());
Console.WriteLine ("Precio Unitario: ");
Punit[x] = float.Parse (Console.ReadLine());
Console.WriteLine ("Dueño: ");
owner = Console.ReadLine();
x++;
break;

case 2:
for (y=0;y
{
Console.WriteLine ("Nombre: {0}",nombre[y]);
Console.WriteLine ("Cantidad: {0}",cantidad[y]);
Console.WriteLine ("Dueño: {0}",owner[y]);
Console.WriteLine ("Precio Unitario: {0}",Punit[y]);
Ptot=Punit[y]*cantidad[y])
Console.WriteLine ("Valor Total: {0}",Ptot);
}
break;

case 3:
Console.WriteLine ("Nombre del articulo para modificar la cantidad: ");
busqueda= Console.ReadLine();
for (y=0;y
{
if (busqueda == nombre[y])
{
Console.WriteLine ("Nueva Cantidad:")
cantidad[y] = int.Parse(Console.ReadLine());
}
}

break;

case 4:
break;

default:
break;
}

}while (opc<4);




}

10 noviembre 2006

Problemas con Arreglos

Práctica con arreglos y vectores:

1.- Generar dos vectores de dimensión 10 y construir un tercer vector e
imprimirlo, cuyos componentes sean la suma de los dos anteriores.

2.- Se leen dos vectores de dimensión 5 y hay que calcular componente a
componente, si tienen datos iguales y escribir cuantos datos iguales tienen.

3.- Generar una matriz de 10x10 y hallar e imprimir la suma de cada una de
sus filas y de cada una de sus columnas.

4.- Generar una matriz de 5x5 (numérica entera) e imprimir el valor más
grande y el más pequeño y los lugares donde se encuentran.


Problemas para entregar:
1.- Una empresa tiene 10 almacenes y hay que crear un algoritmo que lea
las ventas mensuales de cada almacén, calcule la media (promedio) de ventas y un listado de
aquellos almacenes que superen la media.


2.- Crear una agenda electrónica.
El Programa contendrá: Nombre, Direccion, teléfonos ( casa, cell y oficina) y e-mail.
Tendrá el siguiente menú:

1.- Alta
2.- Mostrar todo
3.- Busqueda
4.- Modificaciones


Explicación:
En la sección de Alta Capturara todos elementos. En caso de no tener alguno de esos teléfonos escribir un cero.

La sección de mostrar todo, mostrará toda la información capturada.

La búsqueda la realizará por nombre y mostrará toda la información que corresponda al nombre encontrado.


En la sección de modificaciones, esta la realizará a través de la búsqueda de nombre.
Si encuentra el nombre aparecerá un submenú el cual te permita decidir el campo que quieres modificar.
ej.
1.- Nombre
2.- Dirección
3.- Telefonos
4.- e-mail
5.- salir

La información puede ser la siguiente:
Nombre: "Juan Camaney Ronaldo"
Dirección: "Av. Don quijote #232 Col. Insurgentes"
Telefonos: "casa: 6865-43-45-34 cel: 6861-45-45-45 oficina: "
email: "jcr@hotmail.com"

08 noviembre 2006

Arreglo bidimencionales (Matrices)


Para tablas de dos dimensiones, o también llamadas matrices, se utilizan dos
subíndices para referenciar cada elemento, conjuntamente con el nombre de la tabla.


int[,] matriz = new int[2,5];
matriz [0,0] = 10;
Console.WriteLine ("{0}",matriz[0,0]);




Podemos imaginarnos los arreglos bidimencionales como un arreglo matricial. Donde para acceder a una celda es necesario hacerlo a traves de coordenadas [X,Y].

De esta forma tendremos un programa que maneja un arreglo de una sola dimencion y otro de dos dimenciones. Donde en el vector se almacena el nombre y en la matrz podemos guardar 6 calificaciones.




int [,] califi = new int [6,6];
string[] nombre = new string [6];
int x=0, y=0, opc;


do {
Console.WriteLine ("1.- Entrada de datos");
Console.WriteLine ("2.- Consulta");
Console.WriteLine ("3.- Busqueda");
Console.WriteLine ("4.- Salida");
opc = int.Parse (Console.ReadLine ());
switch (opc)
{
case 1:
Console.WriteLine ("Nombre del alumno {0}"x);
nombre[x] = Console.ReadLine ();

Console.WriteLine ("Dar entrada a 6 calificaciones");
for (y=0;y<6;y++) { Console.WriteLine ("Calificacion {0}",y); calif[x,y] = int.Parse(Console.ReadLine ()); } x++; break case 2: break case 3: break case 4: break default : break } } while (opc< 3);