miércoles, 18 de noviembre de 2009

ejemplo

struct complejo {
  int real;
  int imageniaria;
};

int main (){
 complejo a;
 a.real=1;
 a.imaginaria=3;
 return 0;
}

miércoles, 21 de octubre de 2009

matrices

#include < cstdlib>
#include < iostream>
#include < time.h>

using namespace std;

int valorDado(){
   
    return (rand() % 6);
}

void asignarCeros(int a[][6], int n, int m){
     for(int i=0;i
        for(int j=0;j
           a[i][j]=0;
}

void asignarAleatorios(int a[][6], int n, int m){
           a[valorDado()][valorDado()]++;
}

void imprimir(int a[][6], int n, int m){
     cout<<"\nMatriz:\n";
     for(int j=0;j
           cout<<(j+1)<<"   ";
     cout<
     for(int i=0;i
        for(int j=0;j
           cout<<<" ";
        cout<
     }
}



void llenarMatriz(int a[][6], int n, int m, int cant){
     asignarCeros(a,n,m);
     for(int i=0;i
             asignarAleatorios(a,n,m);
     }
     imprimir(a,n,m);
}

int main()
{
    srand (time(NULL));
    int matriz[6][6],filas=6,columnas=6,n=1000;
    llenarMatriz(matriz,filas,columnas,n);
    system("PAUSE");
    return EXIT_SUCCESS;
}

miércoles, 2 de septiembre de 2009

miércoles, 26 de agosto de 2009

nuevo semestre, nuevos mensajes!!!

los mensajes anteriores los pueden utilizar para tener una guía del desarrollo del curso, sin embargo, desde este momento los mensajes estarán enfocados a los cursos del semestre II del 2009.

miércoles, 17 de junio de 2009

Notas definitivas!!!!

A continuación estan las notas definitivas de los 2 grupos, tengan en cuenta que se hicieron los ajustes en los cuales el estudiante realizaba una reclamación válida. Sin embargo, si existe algún reclamo adicional por favor notificar por correo (jgmorenofr@unal.edu.co). No se hacen excepciones, los reclamos deben ser totalmente válidos.

Esta nota es definitiva:

Notas grupo 2
Notas grupo 12

martes, 16 de junio de 2009

miércoles, 10 de junio de 2009

generación de números aleatorios

El siguiente ejemplo genera números aleatorios hasta que genera el número 0. Las claves son la libreria time.h, y las funciones srand y rand.

/* rand example: guess the number */
#include < time.h>
#include < iostream>
using namespace std;
int main ()
{
int i=1;
srand ( time(NULL) );
i = 1;
while (i!=0) {
cout<< i<<",";
i = rand() % 10;
}
system("PAUSE");
return 0;
}

viernes, 5 de junio de 2009

Sobre el parcial

Por problemas para realizar el parcial final de programación el día 20 de junio se decidió realizarlo el sábado 13 (8 días antes) ya que algunos estudiantes se les cruza con un examen de clasificación de matemáticas. La fecha de la entrega de los proyectos no se modifica.

lunes, 1 de junio de 2009

monitorias!!!

Hoy (lunes 1 de junio) durante todo el día habrá monitorias en el salón 203 del 453, para resolver dudas acerca del proyecto final de cada grupo.

domingo, 31 de mayo de 2009

ejemplo con funciones y procedimientos

/* Para que tengan una guía para hacer el taller 5 y laboratorio 5, hice este ejercicio. ;)
si les falla algo es por el copy-paste... lo revisan y lo arreglan!

*/

#include < iostream>
using namespace std;

void leer(int v[],int n){
cout<<"Ingrese los valores del vector:\n";
for(int i=0;i < n;i++)
cin>>v[i];
}

void imprimir(int v[],int n){
for(int i=0;i < n;i++)
cout<< v[i]<<">
}


int contarApariciones(int v[], int n, int valor){
int cont=0;
for(int i=0;i < n;i++)
if(valor==v[i])
cont++;
return cont;
}

int calcularModa(int v[], int n){
int moda=v[0], contmoda=1, cont;
for(int i=0;i < n;i++){
cont=contarApariciones(v,n,v[i]);
if(cont>contmoda){
contmoda=cont;
moda=v[i];
}
}
return moda;
}

void pause(){
cout<<"\n\n";
system("pause");
}

int main(){
int vector[5], tamano=5, moda;
leer(vector,tamano);
imprimir(vector, tamano);
moda=calcularModa(vector,tamano);
cout<<"\nLa moda es "<< moda;
cout<<" y aparece"<< contarApariciones(vector,tamano,moda)<<" veces";
pause();
return 0;
}

viernes, 8 de mayo de 2009

Ejercicios prácticos

Escoger 3 de los siguientes ejercicios :
1. Verificar si una matrix es la matriz identidad.
2. Verificar si una matrix es simétrica.
3. Hallar la transpuesta de una matriz dada.
4. Hallar el máximo de cada fila y el de cada columna.
5. Realizar un programa para realizar operaciones sobre matrices (suma, multiplicación por un escalar, multiplicación entre matrices).

Material de apoyo:
http://es.wikipedia.org/wiki/Matriz_(matem%C3%A1tica)
http://es.wikipedia.org/wiki/Producto_de_matrices
http://es.wikipedia.org/wiki/Matriz_sim%C3%A9trica
http://es.wikipedia.org/wiki/Matriz_transpuesta
http://video.google.com/videoplay?docid=9141177835851036781

miércoles, 29 de abril de 2009

Monitorias con Edwin

En el ed 401 salón 104, los martes de 4-5p.m.

Edwin tomará asistencia!

El monitor es Edwin Ovalle y el correo es eyovalled @ unal . edu . co

lunes, 27 de abril de 2009

Monitorias con Oscar

Los miércoles 11a.m.- 1p.m. y viernes 9a.m. - 1p.m.en (454-403). La idea es que se reunan con Oscar Garavito (orgaravitor @ unal . edu . co ) y ven en donde trabajan!

domingo, 19 de abril de 2009

me ayudan a encontrar los valores?

El siguiente programa debe mostrar el capital más los intereses obtenidos en un cdt durante determinado número de años. Se debe leer el capital, el interés y un número de años N. Luego calcule e imprima todo el dinero obtenido durante cada uno de los N años, suponiendo que todo lo ganado (incluido el capital original C) se reinvierte a plazo fijo durante el siguiente año. El programa debe mostrar una salida del tipo:
Capital en el año número 1 = 240
Capital en el año número 2 = 288
Capital en el año número 3 = 345.6

En el programa por error algunas variables y/o valores fueron reemplazadas por los rectangulos de colores. Me ayudan a saber que va en los recuadros? (la solución pueden ingresarla como un comentario).

Ejercicio ciclos while y do while

El siguiente ejercicio hace uso de las estructuras de control while y do while. Ejecutenlo, revicen que imprime el programa y realicen un ejemplo (como comentarios ingresen los resultados).















Propongan un ejercicio y su solución que utilice while y do while.

viernes, 17 de abril de 2009

Quiz

Un quiz cortico...















y usando for haga un programa que imprima los numeros del 30 al 50 que son pares.

miércoles, 15 de abril de 2009

Monitorias de repaso!!!!

Las monitorias de repaso se realizaran el jueves de 7 a 1 en el salón 203 del edificio 453, y el viernes de 9 a 11 en el 402 del 454. Esta actividad la realizaran los monitores.

martes, 14 de abril de 2009

Para que sigan estudiando!

Como tod@s ya realizaron los ejercicios propuestos anteriormente y para que no pierdan el ritmo de estudio del parcial del sábado, se plantearon unos ejercicios de repaso para el parcial. Aquí podrán descargar los ejercicios, espero ejecuten los programas que se encuentran planteados. Si el link no funciona, los ejercicios también estan publicados en la página del curso.

jueves, 2 de abril de 2009

Calculadora científica de Daniel

Uno de los compañeros hizo una calculadora que incluye un poco más de lo que se pedia en el laboratorio... revisenla y espero comentarios...

Daniel dice:
Esta es una calculadora cientifica hecha con switch. Debido a que incluye funciones matematicas como potenciacion, seno, coseno, tangente, es importante incluir la biblioteca math.h, ademas de la iostream.
A continuación, el codigo.


#include < iostream>
#include < math.h>
using namespace std;
double a, b, c;
int d, e, f, g;
char signo;
int main() {
cout<< "CALCULADORA\n\n";
cout<< "Ingrese los dos numeros y el signo de la operación aritmetica que desea realizar.\n";
cout<< "Permite realizar:\n";
cout<< "Suma(+), Resta(-), Multiplicación(*), División(/),Division entera(%), Potenciación(p), Radicación(r), Seno (s), Coseno (c) y Tangente (t).";
cout<< "Escriba el simbolo indicado entre parentesis, segun sea la operación que usted desea realizar: ";
cin >> signo;
switch (signo){
case '+':{
cout<<"\nSUMAR\n\n";
cout<< "Ingrese el primer sumando: ";
cin>>a;
cout<< "Ingrese el segundo sumando: ";
cin>>b;
c=a+b;
cout << a<<"+"<< b<<"=>
break;
}
case '-':{
cout<<"\nRESTAR\n\n";
cout<< "Ingrese el minuendo: ";
cin>>a;
cout<< "Ingrese el sustraendo: ";
cin>>b;
c=a-b;
cout << a<<"-"<< b<<"=>
break;
}
case '*':{
cout<<"\nMULTIPLICAR\n\n";
cout<< "Ingrese el primer factor: ";
cin>>a;
cout<< "Ingrese el segundo factor: ";
cin>>b;
c=a*b;
cout << a<<"*"<< b<<"=>
break;
}
case '/':{
cout<<"\nDIVIDIR\n\n";
cout<< "Ingrese el dividendo: ";
cin>>a;
cout<< "Ingrese el divisor: ";
cin>>b;
c=a/b;
cout << a<<"/"<< b<<"=>
break;
}
case '%':{
cout<<"\nDIVISION ENTERA\n\n";
cout<< "Ingrese el dividendo: ";
cin>>d;
cout<< "Ingrese el divisor: ";
cin>>e;
f=d%e;
g=(d-f)/e;
cout << d<<"/"<< e<<"=>
cout <<" El residuo es: "<
break;
}
case 'p':{
cout<<"\nPOTENCIACION\n\n"
;
cout<< "Ingrese la base: ";
cin>>a;
cout<< "Ingrese el exponente: ";
cin>>b;
c=(pow(a,b));
cout << a<<"^"<< b<<"= "<< c ;
break;
}
case 'r':{
cout<<"\nRADICACION\n\n";
cout<< "Ingrese el radicando: ";
cin>>a;
cout<< "Ingrese el indice: ";
cin>>b;
c=(pow(a,(1/b)));
cout <<"Raiz "<< b<<" de ("<< a<<")= "<< c;
break;
}
case 's':{
cout<<"\nSENO\n\n";
cout<< "Ingrese el angulo en radianes: ";
cin>>a;
c=sin(a);
cout <<"SEN ("<< a<<")= "<< c ;
break;
}
case 'c':{
cout<<"\nCOSENO\n\n";
cout<< "Ingrese el angulo en radianes: ";
cin>>a;
c=cos(a);
cout <<"COS ("<< a<<")= "<< c ;
break;
}
case 't':{
cout<<"\nTANGENTE\n\n";
cout<< "Ingrese el angulo en radianes: ";
cin>>a;
c=tan(a);
cout <<"TAN ("<< a<<")= "<< c ;
break;
}
}
return 0;
}

martes, 31 de marzo de 2009

Solución punto 2 del laboratorio 2

El punto de la fecha a muchos les pareció largo, la verdad hay muchas formas de solucionarlo y cortas... ;)

Esta es una que propongo, si tienen mejoras o una mejor porfa realizar el comentario.

En general el algoritma revisa si el día es correcto y guarda en la variable ultimodiames un 1 si es el último día del mes y un 0 si no lo es.

Pues yo creo que esta solución la alcanzan a copiar en máximo dos páginas de una hoja tipo examen... o no?

#include
using namespace std;

int main() {
int ano,mes,dia,ultimodiames=0;
cout<<"\nIngrese el dia";
cin>>dia;
cout<<"\nIngrese el mes";
cin>>mes;
cout<<"\nIngrese el ano";
cin>>ano;
if(ano<=0 || mes>12 || mes<=0 || dia<=0 || dia>31){
cout<<"\nFecha incorrecta";
return 0;
}
if(ano%4==0)
cout<<"\nEl año es bisiesto";
if(mes==1 || mes==3 || mes==5 || mes==7 || mes==8 || mes==10 || mes==12){
cout<<"\nFecha correcta";
if(dia==31)
ultimodiames=1;
}
else if((mes==4 || mes==6 || mes==9 || mes==11)&& dia<=30){
cout<<"\nFecha correcta";
if(dia==30)
ultimodiames=1;
}
else if( mes==2 && dia<=29 && ano%4==0){
cout<<"\nFecha correcta";
if(dia==29)
ultimodiames=1;
}
else if( mes==2 && dia<=28){
cout<<"\nFecha correcta";
if(dia==28)
ultimodiames=1;
}
else
cout<<"\nFecha incorrecta";
if(mes==12 && dia==31){
ano=ano+1;
mes=1;
dia=1;
}
else if(ultimodiames==1){
mes=mes+1;
dia=1;
}
else
dia=dia+1;
cout<<"\nMañana es: "<< ano <<"/"<< mes <<"/"<< dia ;
return 0;
}

lunes, 30 de marzo de 2009

Estos también estan interesantes...

Este es un conjunto de ejecicios sencillos, que ya pueden resolver:

Escribir un programa que lea una fecha en formato DD-MM-AAAA y calcule el número de días transcurridos desde el día 1 de Enero de ese año

Imprimir el mayor, el menor, la suma y la media aritmética de diez números aceptados por teclado

Calcular el tiempo equivalente en horas minutos y segundos a un número de segundos leído. El resultado debe imprimirse en un formato como el siguiente:
7322 segundos equivalen a: 2 horas, 2 minutos y 2 segundos.

Cálculo aproximado del valor del número e con una determinada precisión, siendo dicha precisión un dato de entrada Este número se obtiene mediante la siguiente serie:
e = 1 + 1 / 1! + 1/ 2! + 1/3! +1/4! + …..

Dado un mes del año, su número de días y el día de la semana en que comienza, realizar un programa que muestre por pantalla la representación del calendario correspondiente a dicho mes



Fuente: http://foro.elhacker.net/ejercicios/ejercicios_c-t35110.0.html

y de switch...

Ejercicio # 6
Estatuto SWITCH
En la clase de aritmética de la escuela secundaria técnica No. 35,
el maestro les solicita al departamento de sistemas que se le desarrolle un
programa que pida al usuario un número entero decimal entre 1 y 99,
incluyendo los extremos y obtenga la correspondiente representación en el
sistema romano y su decimal, con el objetivo de poder explicar mediante el
programa visualmente el sistema de conversión a sus alumnos. El programa
mostrará en pantalla el número decimal y su conversión el el sistema romano.

Ejercicio # 7
Estatuto SWITCH
La empresa comercializadora Solva vende escobas, recogedores y aromatizantes,
clasifica a sus clientes de a acuerdo a la frecuencia de compras con las
condiciones siguientes:
Si el cliente es de la categoría 1 se le descuenta el 5%
Si el cliente es de la categoría 2 se le descuenta el 8%
Si el cliente de de la categoría 3 se le descuenta el 12%
Si el cliente es de la categoría 4 se le descuenta el 15%

Cuando el cliente realiza una compra se generan los siguientes datos:
Nombre del cliente
Tipo de cliente
Cantidad comprada de escobas, recogedores y aromatizantes

Desarrollar un programa en C++ que lea estos datos y calcule y muestre en pantalla:
Nombre del cliente
Subtotal a pagar
Descuento
Total a pagar

Fuente: http://www.redee.com/?tema=44688

Más ejercicios...

Ejercicio # 4
Condiciones anidadas
El departamento de Recursos Humanos de la empresa café Combate
quiere desarrollar un calendario en línea para sus empleados, para calendarizar
el número de días hábiles de trabajo de tal manera que el empleado introduzca
un número de mes (1 a 12), y visualice el número de días de ese mes. Debe
considerar que el mes 2 corresponde a febrero que pude tener 29 o 28 días
dependiendo de si es o no bisiesto, el año correspondiente. Desarrolle un
programa en C++ que cumpla con las especificaciones mencionadas y muestre
en pantalla el mes, el numero de días y en el caso de que sea año bisiesto
mostrar el mensaje de que es año bisiesto.

Fuente: http://www.redee.com/?tema=44688

Ejercicios para estudiar

Encontre unos ejercicios para que estudien:

Ejercicio # 1:
Condiciones sencillas
-->El maestro de la clase de Matemáticas quiere determinar cual es la
calificación más alta de su grupo, forma grupos de tres calificaciones y las
captura. Desarrollar un programa en C++, el cual determine el mayor de las
tres calificaciones, el programa debe mostrar en pantalla la calificación mayor.

Ejercicio # 2:
Condiciones sencillas
Un cliente ordena cierta cantidad de brochas de cerda, rodillos y
sellador; las brochas de cerda tienen un 20% de descuento y los rodillos un
15% de descuento. Los datos que se tienen por cada tipo de artículo son: la
cantidad pedida y el precio unitario. Además, si se paga de contado todo
tiene un descuento del 7%. Elaborar un programa en C++ que calcule y muestre
en pantalla el costo total de la orden, tanto para el pago de contado como
para el caso de pago de crédito.

Ejercicio # 3
Condiciones sencillas
En la tienda de mayoreo San Juanita el impuesto que se debe pagar por
los artículos adquiridos se calcula de la siguiente manera: los primeros
$30 no causan impuesto, los siguientes $30 tienen un 30% de impuesto y el
resto el 40% de impuesto, pero si el costo del producto es mayor a $400,
entonces se cobra el 50%. Desarrollar un programa en C++ que lea el costo
básico de un artículo y calcule el costo total. Muestre en pantalla el artículo
y su costo total.


Fuente: http://www.redee.com/?tema=44688

sábado, 28 de marzo de 2009

Un ejemplo en video... a buscar en youtube

Revisando youtube me encontre con un video en el cual explican un ejemplo muy sencillo del cálculo de un promedio dadas 3 notas.



Espero vean otros!!

Tenemos blog!

Por fin he creado el blog. Hace rato lo tenia planeado, pero como no tenia contenido no lo había creado. Hoy sin contenido... lo creé... ;)

pronto tendremos información relevante!