• Viernes 8 de Noviembre de 2024, 18:47

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - MaRRaldo

Páginas: [1]
1
C/C++ / Paisos I Provincies
« en: Lunes 21 de Mayo de 2007, 19:25 »
hola, tengo ke hacer este programita:

La ONU quiere guardar información sobre l'organitzación de sus païes miembros i de las províncias que estos contienen, juntamente con su PIB (producto interior bruto).

La información sobre una província determinada se guarda en la tupla siguiente:

    struct Provincia {
        string nom;
        string capital;
        int habitants;
        int area;  
        double pib;
    };

La información sobre un pais determinado se guarda en tupla siguiente:

    struct Pais {
        string nom;
        string capital;
        vector<Provincia> provs;
    };

La información sobre totso los paises se guarda en un vector de paises:

    typedef vector<Pais> Paisos;

Utilizando las definiciones anteriores hacer una funcion

    int habitants(const Paisos& p, double x);

que devulva la  suma de todos los habitantes de los paises de p que tengan al menos dos provincias  con producto interior bruto inferior o igual a x.

Lo he hecho, esta seria mi funcion:

int habitants(const Paisos& p, double x) {
   int st = 0;
   int sp = 0;
   int cprov = 0;
   for(int i = 0; i<p.size(); ++i) {
      for(int j = 0; j<p.provs.size(); ++i) {
         sp += p.provs[j].habitants;
         if(p.provs[j].pib <= x) ++cprov;
      }               
      if(cprov >= 2) st += s;
      sp = cprov = 0;
   }
   return st;
}


el sp seria un contador para contar todos los habitantes del pais en que estamos, el cprov seria un contador para contar las provincias ke tienen un pib <= x, i en el st se irian sumando los havitantes de los paises ke tuvieran al menos 2 provincias con el pib <= x.

Esta funcion la envio a un programa corrector ke me dice si esta bien o no, pero me dice ke esta mal, y no se donde esta el fallo, si alguien me pudiera hechar un cable....

P.d: soy estudiante de universidad, y este es un programa de la lista de ejercicios ke nos pasaron para hacer.
gracias adelantadas, salu2

2
Pascal / Porke No Me Compila?
« en: Domingo 7 de Enero de 2007, 18:14 »
program EIX_activitat1;
{$APPTYPE CONSOLE}
uses
  SysUtils;

type
        T_poli = RECORD
        grau: integer;
        coef: ARRAY [0..15] of real;
        end;
var
        a,b,PoliGran,PoliPetit,s,m:T_poli;
        k:integer;




procedure llegir_polinomi (VAR p:T_poli);
var i:integer;

begin
write('GRAU MAX POLINOMI: ');
readln(p.grau); writeln;

for i:=0 to p.grau do
        begin
        write('Indrodueix el coeficient per a grau [',i,']: ');
        readln(p.coef);
        end;
end;




procedure sumar_polinomi (VAR a,b,s:T_poli);
var i:integer;

begin
if a.grau>b.grau then
                begin
                        PoliGran:= a;
                        PoliPetit:= b;
                        end
                                else
                                        begin
                                        PoliGran:= b;
                                        PoliPetit:= a;
                                        end;
for i:=0 to PoliGran.grau do
        begin
        s.coef := PoliGran.coef + PoliPetit.coef;
        end;
                writeln; writeln;
                write('EL RESULTAT DE LA SUMA ES:'); writeln;
                writeln;
                for i:=0 to PoliGran.grau do
                begin
                writeln('GRAU [',i,']: ',s.coef:0:0,'');
        end;
end;




procedure  multiplicar_polinomi (VAR a,b,m:T_poli);
var i,j:integer;
begin
if a.grau>b.grau then
                begin
                        PoliGran:= a;
                        PoliPetit:= b;
                        end
                                else
                                        begin
                                        PoliGran:= b;
                                        PoliPetit:= a;
                                        end;

        m.coef[i+j]:=0;
        for i:=0 to PoliPetit.grau do
                for j:=0 to PoliGran.grau do
                begin
                m.coef[i+j]:=m.coef[i+j]+(PoliPetit.coef*PoliGran.coef[j]);
                end;

        for i:=0 to PoliGran.grau do
        begin
        writeln('GRAU [',i,']: ',m.coef:0:0,'');
        end;
        end;








var
opcio:integer;

begin
writeln;
writeln('OPERACIONS AMB POLINOMIS');
writeln;
writeln;

begin
    repeat
      writeln ('MENU:');
      writeln ('Llegir polinomi');
      writeln ('Sumar polinomi');
      writeln ('mulitiplicar polinomi');
      writeln ('sortir del programa');
      readln (opcio);
      case (opcio) of
        1:writeln ('has escollit llegir poli');
        2:writeln ('has escollit sumar poli');
        3:writeln ('has escollit multiplicar poli');
        0:writeln ('has escollit acabar');
        else
          writeln ('error');
      end;
      readln
    until opcio = 0
readln;
end.


me da un error en readln; y en el end. final, alguna ayuda plz

Páginas: [1]