pascal ödev

sinevm
10-12-2009, 18:21   |  #1  
OP Taze Üye
Teşekkür Sayısı: 0
10 mesaj
Kayıt Tarihi:Kayıt: Nis 2009

Merhaba benim bir ödevim var pascalda yazmam gerekiyor yazdım da..Ancak derleyici hata veriyo hem de saçma sapan bir yerde bir sürü kişiye sordum kimse anlamadı.Anlayan biri cevap verirse çok iyi olur.Hemen bugün düzeltmem lazım. :(
 
program bbg(input,output);
 var
    i,x,n,y:integer;
    B,min,max:array[1..100] of integer;
 begin
    writeln('dizinin eleman sayisini girin.(en az 3 elemanlı olmalıdır)');
    readln(n);
      for i:=1 to n do
        begin
          writeln(i,'. elemani girin.');
          readln(B)
        end;
        begin
          if(B[1]>B[2])
          then
              max[1]:=B[1];
              x:=0;
              y:=1;
                for i:=1 to n-2 do
                  begin
                    if(B[i+1] and B[i+1]>B[i+2])
                    then
                        x:=x+1;
                        B[i+1]:=min[x]

            end;

               for i:=1 to n-2 do
                 begin
                   if(B[i+1]>B and B[i+1]>B[i+2])
                   then
                       y:=y+1;
                       B[i+1]:=max[y]
                 end
           else
                min[1]:=B[1];
                x:=0;
                y:=0;
                   for i:=1 to n-2 do
                     begin
                       if(B[i+1]>B and B[i+1]>B[i+2])
                       then
                           y:=y+1;
                           B[i+1]:=max[y]
                     end;
                   for i:=1 to n-2 do
                     begin
                       if(B[i+1] and B[i+1]                       then
                           x:=x+1;
                           B[i+1]:=min[x]
                       end;

           end;
                writeln('minumum noktalari:' min[x] ', maximum noktalari:' max[y]);
                readln;
  end.
 
 
Kırmızıyla yazılı 'else' kodu için yanlış diyor.

Son Düzenleme: sinevm ~ 10 Aralık 2009 18:21
Yamay
10-12-2009, 18:30   |  #2  
Yıllanmış Üye
Teşekkür Sayısı: 0
170 mesaj
Kayıt Tarihi:Kayıt: May 2008
Alıntı: sinevm  
Merhaba benim bir ödevim var pascalda yazmam gerekiyor yazdım da..Ancak derleyici hata veriyo hem de saçma sapan bir yerde bir sürü kişiye sordum kimse anlamadı.Anlayan biri cevap verirse çok iyi olur.Hemen bugün düzeltmem lazım. :(
 
program bbg(input,output);
 var
    i,x,n,y:integer;
    B,min,max:array[1..100] of integer;
 begin
    writeln('dizinin eleman sayisini girin.(en az 3 elemanlı olmalıdır)');
    readln(n);
      for i:=1 to n do
        begin
          writeln(i,'. elemani girin.');
          readln(B)
        end;
        begin
          if(B[1]>B[2])
          then
              max[1]:=B[1];
              x:=0;
              y:=1;
                for i:=1 to n-2 do
                  begin
                    if(B[i+1] and B[i+1]>B[i+2])
                    then
                        x:=x+1;
                        B[i+1]:=min[x]

            end;

               for i:=1 to n-2 do
                 begin
                   if(B[i+1]>B and B[i+1]>B[i+2])
                   then
                       y:=y+1;
                       B[i+1]:=max[y]
                 end
           else
                min[1]:=B[1];
                x:=0;
                y:=0;
                   for i:=1 to n-2 do
                     begin
                       if(B[i+1]>B and B[i+1]>B[i+2])
                       then
                           y:=y+1;
                           B[i+1]:=max[y]
                     end;
                   for i:=1 to n-2 do
                     begin
                       if(B[i+1] and B[i+1]                       then
                           x:=x+1;
                           B[i+1]:=min[x]
                       end;

           end;
                writeln('minumum noktalari:' min[x] ', maximum noktalari:' max[y]);
                readln;
  end.
 
 
Kırmızıyla yazılı 'else' kodu için yanlış diyor.

mavi yaptığım end'i silip bi dene istersen. C# falan olsa daha çok yardımım dokunabilirdi.Açıkcası pascal bilmiyorum. Ama sen bi dene :)

sinevm
10-12-2009, 18:43   |  #3  
OP Taze Üye
Teşekkür Sayısı: 0
10 mesaj
Kayıt Tarihi:Kayıt: Nis 2009

Maalesef olmuyo. :(
' ; expected but else found' diye hata mesajı veriyo.else nin yerine ; bile denedim olmuyo. :(
Maalesef tarihe karışmış bir dili öğrenmek zorundayım.

Yamay
10-12-2009, 21:19   |  #4  
Yıllanmış Üye
Teşekkür Sayısı: 0
170 mesaj
Kayıt Tarihi:Kayıt: May 2008

http://www.webhocam.net/dokumanlar.asp?docu=izle&docuID=353

Bu linkte else yapısının nasıl kullanılacağını anlatmış.İstersen ordan bi dene.

sinevm
05-01-2010, 14:35   |  #5  
OP Taze Üye
Teşekkür Sayısı: 0
10 mesaj
Kayıt Tarihi:Kayıt: Nis 2009

Merhaba. Ben bu mesaja teşekküer etmeyi unutmuşum. :) Şimdi fark ettim.Geç de olsa çok teşekkür ederim...