Reglamento general de los foros   •   FAQ   •   Buscar en el foro •  Registrarse | Iniciar sesión 



Foros Linux » Desarrollo » Programación


Nuevo tema Responder al tema
 [ 3 mensajes ] 
Patrocinadores

Autor
Buscar:
Mensaje

Desconectado
Forista Nuevo
Forista Nuevo

Registrado: Mié Nov 10, 2010 3:44 pm
Mensajes: 13

Nota Publicado: Mié Nov 10, 2010 3:46 pm 
Arriba  
hola he hecho un programilla y tengo unos vectores que quiero trabajar con ellos en una funcion, pero no se como llevarlos y devolverlos con unos valores nuevos, si me pueden ayudar
gracias

 Perfil Email  

Desconectado
Moderador
Moderador
Avatar de Usuario

Registrado: Dom Abr 18, 2010 4:30 pm
Mensajes: 2790
Ubicación: En una de las nalgas del culo del mundo (según la Bersuit Vergarabat)

Nota Publicado: Mié Nov 10, 2010 4:45 pm 
Arriba  
bueno pero sin conocer el código sin saber el lenguaje...¿no te parece que es difícil?

_________________
... reinstalar un SO cuando produce un error es como tirar un bebe a la basura cuando se hace caca..

Trusted Network and Developer | Reglamento General de los Foros |WIKI-EL | Twitter @SISIAM
Debian| ArchLinux |Linux User #508809

 Perfil WWW  

Desconectado
Forista Nuevo
Forista Nuevo

Registrado: Mié Nov 10, 2010 3:44 pm
Mensajes: 13

Nota Publicado: Mié Nov 10, 2010 5:18 pm 
Arriba  
hola el programa es en c, y este es el codigo
Código:
#include<stdio.h>
#include <stdlib.h>
#include <math.h>

void(int *metod,int *vec,int n,int esca, int part);

   
main()
{
   
    int partidos=0;
       
    printf("\n\n Bienvenido al sistema de calculo de escanos.\n por favor siga las instrucciones, gracias\n");

    while ( partidos <2 || partidos>16){
        printf("\n eliga el numero de partidos politicos que desea (numero entre 2 y 16)\t");
        scanf("%d",&partidos);
    }
   /*system('clear');*/
   int mpartidos[17][50];
   
   float votos;
   
   int i;
   int f;
   int c;
   
   for (f=0;f<partidos;f++){
      for (c=0;c<50;c++){

         mpartidos[f][c]=0;
        }
    }
   int escanos=0;
      while (escanos<7 || escanos>100){
      printf("\n numero de escanos:(numero entre 7 y 100)\t");
      scanf("%d",&escanos);
    }
   /*system('clear');*/
   int a=0;
   printf("\n A continuacion meta los votos recibidos por cada partido:\n");
   for (i=0;i<partidos;i++){
      a=i+1;
      printf("\n partido(%d)=\t",a);
      scanf("%f",&votos);
      mpartidos[i][0]=votos;
   }
   
   printf("\n\n Ahora el programa calculara los escanos segun estos 4 metodos:\n \n HAMILTON \n \n D'HONT \n \n LAGUE \n \n HILL-HUNTINGTON \n \n");
     
    int TAM=100;
   
   /*METODO DHONT*/
   float metod[17];
   float aq;
   int fil;
   int col;
   float cl;
   int vec[partidos];
   int x=1;
   for (fil=0;fil<partidos;fil++){
         metod[fil]=mpartidos[fil][0];
         vec[fil]=mpartidos[fil][1];
        }
   
         
   funcion (metod[partidos],vec[partidos],x,escanos,partidos);
   
   for (fil=0;fil<partidos;fil++){
      mpartidos[fil][1]=vec[fil];
        }
         
   /*system("clear");*/
   
   /*fin metodo DHONT*/
   
   /*system("clear");*/
   printf("\n\t\tDHONT \t\tHAMILTON \t\t LEAGUE \t HILL-HUNTINGTON\n");
   int z;
   for (i=0; i<partidos; i++) {
               z=i+1;
               printf("\n partido%d \t%d  \t\t  %d \t\t\t %d \t\t\t %d\n",z,mpartidos[i][1],mpartidos[i][2],mpartidos[i][3],mpartidos[i][4]);
            }
   printf("\n");
      
      
      /*FUNCION*/
      
      void funcion(float *metod,int *vec,int x,int escanos, int partidos){
      float metodo[17][1000];
      float aq;
      int fil;
      int col;
      float cl;
      int TAM=100;
      float d;
      for (fil=0;fil<part;fil++){
         cl=0;
         for (col=0;col<TAM;col++){
            if (x==1){
               d=cl+1;
               }
            if (x==2){
               d=(2*cl)+1;
            }
            if (x==3){
               d=sqrt(cl*(cl+1));
            }
            aq=(*vect)/(d);
            metodo[fil][col]=(aq);
            cl++;
         }
         
      }
      
      float mx=0;
      int aa,bb;
      int i;
      for(i=0;i<esca;i++){
         for (fil=0;fil<part;fil++){
            for (col=0;col<TAM;col++){
               if (metodo[fil][col]>mx){
                  mx=metodo[fil][col];
                  aa=fil;
                  bb=col;
               }
            }
         }
         metodo[aa][bb]=0;
      
         mx=0;
         vec(aa=vec(aa)+1;
      }
   
   }
         
   /*system("clear");*/
   
   
   }


gracias

 Perfil Email  
Mostrar mensajes previos:  Ordenar por  
 [ 3 mensajes ] 
Nuevo tema Responder al tema

Saltar a:  


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 6 invitados

No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro
No puede enviar adjuntos en este Foro

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group :: Style based on FI Subice by phpBBservice.nl :: Todos los horarios son UTC - 6 horas
Traducción al español por Huan Manwë
phpBB SEO