|
16
|
Programación / Programación C/C++ / Re: Como salir del bucle (preferiblemente con algun system())
|
en: 23 Octubre 2017, 18:32 pm
|
La función EditVector esta a nivel del while ?? Si la respuesta es si, pues yo lo que haría es hacer que EditVector devuelva un "indicador juego", un entero o una cadena, algo como : int CODIGO_SALIDA = 9; int EditVector (int ** tablero ,int numfil,int numcol) { ..... ..... case 't': case 'T': return CODIGO_SALIDA; .... int indicador; while(indicador != CODIGO_SALIDA ){ indicador = EditVector(... ...); }
|
|
|
17
|
Programación / Programación C/C++ / Re: No puedo sumar las parcelas, sólo el total de naranjas y mandarinas [C]
|
en: 20 Octubre 2017, 22:49 pm
|
Hola, lo comentado, el mismo código pero con linked list y estructuras de datos. Cualquier comentario es bienvenido. #include <stdio.h> #include <stdlib.h> typedef struct{ int naranjas; int mandarinas; }type_parcela; typedef struct{ type_parcela * val; void * next; }node; int preguntarNaranjas(); int preguntarMandarinas(); int preguntarParcelas(); void printResumen(node * produccion); type_parcela * crearParcela(int naranjas, int mandarinas); void push(node * head, type_parcela * val) ; void producir(node *produccion); int main(int argc, char *argv[]) { int numeroParcelas = preguntarParcelas(); int i; node *produccionTotal = (node *) malloc(sizeof(node *)); for(i = 0 ; i < numeroParcelas ; i++){ producir(produccionTotal); } printResumen(produccionTotal); return 0; } void producir(node *produccion){ int mandarinas = preguntarMandarinas(); int naranjas = preguntarNaranjas(); push(produccion, crearParcela(naranjas, mandarinas)); } void push(node * head, type_parcela * val) { node * current = head; while (current->next != NULL) { current = current->next; } if(!current->val){ //el elemento actual no tiene un valor asignado current->val = val; return ; } /* now we can add a new variable */ current ->next = malloc(sizeof(node *)); ((node*)current->next)->val = val; ((node*)current->next)->next = NULL; } type_parcela * crearParcela(int naranjas, int mandarinas){ type_parcela * parce = (type_parcela *) malloc(sizeof(type_parcela *)); parce->naranjas = naranjas; parce->mandarinas = mandarinas; return parce; } void printResumen(node * produccion){ int totalNaranjas = 0; int totalMandarinas = 0; int totalProduccionParcela = 0; int i = 0; node * current = produccion; while (current) { totalNaranjas += current->val->naranjas; totalMandarinas += current->val->mandarinas; totalProduccionParcela = current->val->naranjas + current->val->mandarinas; printf("\nParcela #%d: Produccion: %d ",i , totalProduccionParcela ); i++; current = current->next; } printf("\nTotal produccion naranjas: %d ",totalNaranjas ); printf("\nTotal produccion mandarinas: %d ",totalMandarinas ); } int preguntarParcelas(){ int numeroParcelas; do{ printf("Ingrese la cantidad de parcelas: "); scanf("%d",&numeroParcelas ); }while(numeroParcelas<=0); return numeroParcelas; } int preguntarNaranjas(){ int numeroNaranjas; do{ printf("\nIngrese la cantidad de naranjas: "); scanf("%d",&numeroNaranjas ); }while(numeroNaranjas <= 0); return numeroNaranjas; } int preguntarMandarinas(){ int numeroMandarinas; do{ printf("\nIngrese la cantidad de mandarinas: "); scanf("%d",&numeroMandarinas ); }while(numeroMandarinas <= 0); return numeroMandarinas; }
|
|
|
18
|
Programación / Programación C/C++ / Re: No puedo sumar las parcelas, sólo el total de naranjas y mandarinas [C]
|
en: 18 Octubre 2017, 22:23 pm
|
Hola, se me ocurrió mejorar el código de S4ms3pi0l con punteros en lugar de arrays, echarle un ojo por favor, tengo pensado implementarlo también con estructuras de datos y listas enlazadas, lo hago por aprender y practicar básicamente. Se veis alguna cosa que pueda mejorar os agradezco cualquier comentario. #include <stdio.h> #include <stdlib.h> int preguntarNaranjas(); int preguntarMandarinas(); int preguntarParcelas(); void printResumen(int ** parcela, int numeroParcelas); int ** initParcelaPointer(int numeroParcelas); int main(int argc, char *argv[]) { int parcelas = preguntarParcelas(); int **parcelaPointer = initParcelaPointer(parcelas); int i; int * temp; for(i = 0 ; i < parcelas ; i++){ int mandarinas = preguntarMandarinas(); int naranjas = preguntarNaranjas(); temp = (int*) parcelaPointer[i]; *temp = mandarinas; temp++; *temp = naranjas; } printResumen(parcelaPointer, parcelas); return 0; } int ** initParcelaPointer(int numeroParcelas){ int **parcelaPointer; parcelaPointer = (int **) malloc(sizeof(int *) * numeroParcelas ); int i; for(i = 0 ; i < numeroParcelas ; i++){ parcelaPointer [i ] = (int *) malloc(sizeof(int *) * 2); } return parcelaPointer; } void printResumen(int ** parcela, int numeroParcelas){ int totalNaranjas = 0; int totalMandarinas = 0; int totalProduccionParcela = 0; int i; for(i = 0 ; i < numeroParcelas ; i++){ totalProduccionParcela = 0; totalMandarinas += *parcela[i]; totalProduccionParcela += *parcela[i]; parcela[i]++; totalNaranjas += *parcela[i]; totalProduccionParcela += *parcela[i]; printf("\nParcela #%d: Produccion: %d ",i , totalProduccionParcela ); } printf("\nTotal produccion naranjas: %d ",totalNaranjas ); printf("\nTotal produccion mandarinas: %d ",totalMandarinas ); } int preguntarParcelas(){ int numeroParcelas; do{ printf("Ingrese la cantidad de parcelas: "); scanf("%d",&numeroParcelas ); }while(numeroParcelas<=0); return numeroParcelas; } int preguntarNaranjas(){ int numeroNaranjas; do{ printf("\nIngrese la cantidad de naranjas: "); scanf("%d",&numeroNaranjas ); }while(numeroNaranjas <= 0); return numeroNaranjas; } int preguntarMandarinas(){ int numeroMandarinas; do{ printf("\nIngrese la cantidad de mandarinas: "); scanf("%d",&numeroMandarinas ); }while(numeroMandarinas <= 0); return numeroMandarinas; }
|
|
|
20
|
Programación / Programación C/C++ / Re: Problemas con consulta mysql en c
|
en: 17 Octubre 2017, 10:19 am
|
Le acabo de echar un ojo y parece estar todo correcto, lo que yo haría sería debuggar y copiar el valor de la variable consulta1 y pegarlo directamente en mysql workbench y ver qué te devuelve, podrías tambier pegar los resultados erróneos que te devuelve.
Saludos
|
|
|
|
|
|
|