Proyecto para todos ( MINI - PROYECTOS )

Responder
Mensaje
Autor
polly
Mensajes: 619
Registrado: 19/07/2007 3:42 pm
Ubicación: Valladolid (Spain)
Contactar:

#31 Mensaje por polly » 18/08/2008 6:45 am

Hola, hoy empezamos con los proyectos.

De momento los participantes somos:


Polly
WaRc3L
v4r3t
nicolas_cof (por confirmar)
clavo


El lenguaje sera C estandar

Las propuestas son (de momento):


El ahorcado (basico)
Calculadora simple
Tres en raya
Hundir la flota
Logo
Cambio de monedas
Ocurrencias de una determinada palabra en un texto
Determinar el tipo de un caracter
Maximo comun divisor
Numeros perfectos


Podriamos empezar con la calculadora, ya se que es muy muy sencillo, pero seria para adaptarnos al estilo de los proyectos, adaptarnos a los codigos de los demas, y a las fechas fijadas y para entrar un poco en calor.

Empiezo haciendo una serie de prototipos de funciones que se asignara a cada participante.

CALCULADORA SIMPLE (muy simple)

Los prototipos de funciones de este proyecto seran 10.

4 prototipos seran los concernientes a las operaciones

4 prototipos seran los concernientes a la peticion de valores de cada operacion aritmetica (interfaces)

2 prototipos : menu() y leer_opcion

Las operaciones seran: Suma, Resta , Multiplicacion, Division.
Las opciones disponibles del menu seran 5, en orden son;
Suma, Resta, Multiplicacion,Division, Salir.

Todas las funciones seran llamadas desde "main" (lo usual).
Las variables disponibles seran :


int opcion;
double operando1;
double operando2;
double resultado;



Prototipos para CALCULADORA SIMPLE

void menu (void)
Precondicion: Ninguna
Cometido: Proporcionar un menu visual de las opciones
Postcondicion : Visualizado correcto

void leer_opcion (int *opcion)
Pre: Ninguna
Cometido: Pedir al usuario una opcion del menu
Post: Opcion valida dentro del rango de valores posibles

void interfaz_suma (double *operando1, double *operando2)
Pre: Ninguno
Cometido: Pedir 2 numeros para sumar
Post: Numeros validos para sumar (ni letras, ni otros caracteres, solo numeros)

double suma (double operando1, double operando2)
Pre: Operandos 1 y 2 validos
Comentido: Sumar los operandos
Post: Suma valida

void interfaz_resta (double *op1, double *op2)
Pre: Ninguno
Comentido: Pedir 2 numeros para restar
Post: Numeros validos para restar

double resta (double op1, double op2)
Pre: Operandos validos
Cometido: Restar los operandos
Post: Resta valida

void interfaz_multiplicacion (double *op1, double *op2)
Pre: Ninguno
Cometido: Pedir 2 numeros
Post: Numeros validos

double multiplicacion (double op1, double op2)
Pre: Operandos validos
Comentido: Multiplicar...
Post: Multiplicacion correcta

void interfaz_division (double *op1, double *op2)
Pre: Ninguno
Cometido: Pedir 2 numeros
Post: Numeros validos

double division (double op1, double op2)
Pre: Operandos validos
Cometido: Dividir...
Post: Division correcta


Creo que no se me olvida nada, si veis algun fallo comentadlo, este mismo dia distribuiremos los prototipos.

PD:
Precondicion: Una precondicion es un aserto (predicado, hecho) que se debe cumplir antes del comienzo de la ejecucion del codigo
Postcondicion: Es un aserto (predicado, hecho) que se debe cumplir despues de la ejecucion del fragmento de codigo.

Por ejemplo:

Si el participante que realiza la funcion "dividir" se le pasa como segundo operando un cero (0) no podra garantizar el correcto funcionamiento de su fragmento de codigo ya que se le ha pasado un 2º argumento no valido (division por cero) ( no serian validos tambien: caracteres, simbolos que no sean numeros,,..etc)

En este ejemplo seria culpa del que ha codificado la funcion "interfaz_division" ya que la postcondicion de esta funcion era garantizar valores validos para pasarselos a la funcion "dividir".

Cada participante se ve obigado a cumplir con las postcondiciones de las funciones que se les ha asiganado asi como tambien pueden suponer que las precondiciones siempre seran verdaderas.

Cualquier duda respecto a esto comentarlo.

S2
enrmarc

WaRc3L
Mensajes: 199
Registrado: 12/06/2008 12:27 pm
Ubicación: en el registro de la CPU

#32 Mensaje por WaRc3L » 18/08/2008 7:34 am

Muy bien explicado todo!, voy a empezar ha hacerla ok?
ToDos PoDeMoS CoMpaRTiR La Luz De La BoMBiTa!

polly
Mensajes: 619
Registrado: 19/07/2007 3:42 pm
Ubicación: Valladolid (Spain)
Contactar:

#33 Mensaje por polly » 18/08/2008 7:43 am

hey espera , que hay que asignar a cada uno una funcion,
enrmarc

WaRc3L
Mensajes: 199
Registrado: 12/06/2008 12:27 pm
Ubicación: en el registro de la CPU

#34 Mensaje por WaRc3L » 18/08/2008 7:45 am

aaaaaaaaaaaaa xDDD ok ok!, bueno de momento no he comenzado nada... estava provando cosas de C

Saludos y perdona!
ToDos PoDeMoS CoMpaRTiR La Luz De La BoMBiTa!

WaRc3L
Mensajes: 199
Registrado: 12/06/2008 12:27 pm
Ubicación: en el registro de la CPU

#35 Mensaje por WaRc3L » 18/08/2008 7:53 am

por cierto... valdran operandos negativos?

Saludos!
ToDos PoDeMoS CoMpaRTiR La Luz De La BoMBiTa!

polly
Mensajes: 619
Registrado: 19/07/2007 3:42 pm
Ubicación: Valladolid (Spain)
Contactar:

#36 Mensaje por polly » 18/08/2008 8:10 am

si, solo numeros positivos, negativos
Estoy esperando a ver si algun participante mas da señales de vida
enrmarc

WaRc3L
Mensajes: 199
Registrado: 12/06/2008 12:27 pm
Ubicación: en el registro de la CPU

#37 Mensaje por WaRc3L » 18/08/2008 8:13 am

voy a enviar unos quantos mensajillos ok? xDDD
ToDos PoDeMoS CoMpaRTiR La Luz De La BoMBiTa!

Avatar de Usuario
v4r3t
Mensajes: 103
Registrado: 06/03/2007 12:00 am

#38 Mensaje por v4r3t » 18/08/2008 9:26 am

Aquí ando, a ver que me mandáis.
-=v4r3t=-

WaRc3L
Mensajes: 199
Registrado: 12/06/2008 12:27 pm
Ubicación: en el registro de la CPU

#39 Mensaje por WaRc3L » 18/08/2008 9:27 am

Bueno, ahora tenemos que esperar... has leido las reglas?

Saludos!
ToDos PoDeMoS CoMpaRTiR La Luz De La BoMBiTa!

Avatar de Usuario
v4r3t
Mensajes: 103
Registrado: 06/03/2007 12:00 am

#40 Mensaje por v4r3t » 18/08/2008 9:51 am

Pozí, ya veréis como lo organizaís.
-=v4r3t=-

polly
Mensajes: 619
Registrado: 19/07/2007 3:42 pm
Ubicación: Valladolid (Spain)
Contactar:

#41 Mensaje por polly » 18/08/2008 10:03 am

Bueno, la fecha limite para entregar las funciones es el miercoles (hasta las 23:00 pm , por cierto, hora de España)

Las distribuciones seran las siguientes:

WaRc3L: menu y leer_opcion
v4r3t : interfaz_suma y suma
polly: interfaz_resta y resta
nicolas_cof: interfaz_multiplicacion y multiplicacion
clavo: interfaz_division y division


Formato de entrega: Postear el codigo simplemente ( a ser posible la version final, es decir, NO pongais varios codigos cada uno mejor que el anterior)

Empezamos...


PD: si alguno no da señales de vida, sus repectivas funciones se otorgaran a otro participante
PD2: Haber si alguno se va pensando los prototipos de las funciones de algun otro proyecto
PD3: Tambien podriamos (ademas de los proyectos) hacer competiciones: proponemos problemas de programacion, se dan fechas y se postean...)
enrmarc

WaRc3L
Mensajes: 199
Registrado: 12/06/2008 12:27 pm
Ubicación: en el registro de la CPU

#42 Mensaje por WaRc3L » 18/08/2008 10:10 am

Yo empiezo!!!

ya verais que menu tan maravilloso tendreis jeje!

Saludos!
ToDos PoDeMoS CoMpaRTiR La Luz De La BoMBiTa!

WaRc3L
Mensajes: 199
Registrado: 12/06/2008 12:27 pm
Ubicación: en el registro de la CPU

#43 Mensaje por WaRc3L » 18/08/2008 10:49 am

Buenas! espero que alguien este por aqui... incluido polly,

es sobre la funcion leer_opcion(int *opcion);

Cometido: Pedir al usuario una opcion del menu
como puedo pedir el valor, si se pasa como parametro?, puedo pedir la opcion desde el menu, y despues pasarsela como parametro de leer_opcion y despues que la comprueve dicha funcion? esque si no lo hago asi, no se como puedo pedir el valor si esta como parametro.. Me explico:

Para poder pasar el parametro, necesito el valor no? y el cometido dice que tengo que pedir una opcion del menu.
ToDos PoDeMoS CoMpaRTiR La Luz De La BoMBiTa!

clavo
Mensajes: 30
Registrado: 13/08/2008 11:38 pm

#44 Mensaje por clavo » 18/08/2008 11:05 am

hola ya estoy por aqui, para mañana me pongo a ello. recuerden que soy principiante y esto espero que me sirva para mejorar.

simplemente programo la parte del codigo que se refiere a la division, no?

bueno pues eso mañana me pongo a ello y haber s para la noxe lo tengo

saludos

WaRc3L
Mensajes: 199
Registrado: 12/06/2008 12:27 pm
Ubicación: en el registro de la CPU

#45 Mensaje por WaRc3L » 18/08/2008 11:50 am

clavo, tu tienes que programar la parte que te dio polly, en tu caso, la parte de la division y la parte de comprovacion de la division.

Despues seguramente, crearemos el main con todas las funciones, que ha echo la gente.

Saludos!
ToDos PoDeMoS CoMpaRTiR La Luz De La BoMBiTa!

Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado