[ważne] Pascal-tablica i jej transponowanie

Zaczęty przez hubert1, 15 Luty 2011, 22:13:56

Poprzedni wątek - Następny wątek

hubert1

*****
Ekspert
Wiadomości: 650
"bo licz± siê wspomnienia, prawda, prawda" :D
Miejsce pobytu: Bydgoszcz
IP zapisane
Polecenie: Dokonać transponowania macierzy kwadratowej o rozmia­rze podanym przez użytkownika, tzn. zamienić i-ty wiersz z i-tą kolumną miej­scami (dla wszystkich wartości i).
Wyświetlić zawartość macierzy przed i po transponowaniu.
Macierz powinna być wypełniona liczbami losowymi z zakresu <-50,50>.



Program aktualnie wyświetla tablicę, z transponowaniem mam już problem. Aktualny kod przedstawia się następująco:

program transponowanie;

uses crt;

var
i,j,k:byte;
a:array[1..50,1..50] of integer;

begin
clrscr;
randomize;
writeln('podaj rozmiar tablicy kwadratowej');
readln(k);
for i:=1 to k do
  begin
  writeln;
   for j:=1 to k do
    begin
     a[i,j]:=random(101)-50;
     write(a[i,j]:3,  ' , ');
    end;
  end;
writeln;
writeln;
writeln('wyświetlono tablicę');
readln;
end.


help, pilne.

hubert1

*****
Ekspert
Wiadomości: 650
"bo licz± siê wspomnienia, prawda, prawda" :D
Miejsce pobytu: Bydgoszcz
IP zapisane
eee, poradziłem sobie. Było to łatwiejsze niż początkowo myślałem. Kod końcowy jest następujący:

program transponowanie;

uses crt;

var
i,j,k : byte;
     a : array[1..50,1..50] of integer;
     b : array[1..50,1..50] of integer;

begin
clrscr;
randomize;
textcolor(yellow);
writeln('podaj rozmiar tablicy kwadratowej i nacisnij ENTER');
readln(k);
textcolor(red);
for i:=1 to k do
   begin
    writeln;
     for j:=1 to k do
      begin
       a[i,j]:=random(101)-50;
       write(a[i,j]:3,  ' , ');
      end;
   end;
writeln;
writeln;
textcolor(yellow);
writeln('wy˜wietlono tablic©');
writeln;
writeln('nacisnij klawisz aby wyswietlic przetranspondowana');
readln;
  for i:=1 to k do
   for j:=1 to k do
    b[i,j]:=a[j,i];
    writeln;
textcolor(yellow);
writeln('tablica przetransponowana');
textcolor(red);
writeln;
  for i := 1 to k do
   begin
    for j := 1 to k do write(b[i,j]:3, ' , ');
    writeln;
   end;
readln;
end.

lukas_gab

*****
Ekspert
Wiadomości: 844
IP zapisane
Na której uczelni jeszcze uczą Pascala ? @_@

robert79513

*****
Ekspert
Wiadomości: 1,777
IP zapisane

lukas_gab

*****
Ekspert
Wiadomości: 844
IP zapisane
A  żyje żyje. Zawitałem, żeby upewnić się czy serwis bezpieczny, bo jedno z moich haseł wyciekło, jak i cała baza po ataku na jedno z wiodących grup dyskusyjnych programistycznych. Jednak na win7 miałem inne hasło więc strona bezpieczna  Co prawda jakiś czas temu ... uf ... doooooość sporo wstecz zarzuciłem funkcję, z powodu braku czasu, jednak po tych 2 latach na uczelni doszedłem już do wprawy w studiowaniu. Poważnie zastanawiam się nad powrotem tutaj, a co najmniej do pisania. Fakt - obecnie korzystam z Debiana 6 ,a to z powodu musu programowania w ASM pod linuxa z użyciem linuksowych funkcji systemowych, a obecny laptop nie uciągnie 7 wraz z debkiem na virtualce ... ale to tylko do czasu nowego komputera więc niebawem. Nie róbmy za dużego OT

@autor
Jak byś miał jeszcze jakieś problemy z macierzami to pisz. Gdzieś na czeluściach dysku leżą jeszcze moje programy do operacji na wektorach i macierzach, taki kalkulator tylko ze napisany w c++ i mfc, jednak może się przyda. Kod straszny bo pisałem te programy w autobusie D 40min przed laborkami ale jakoś działa ;p

hubert1

*****
Ekspert
Wiadomości: 650
"bo licz± siê wspomnienia, prawda, prawda" :D
Miejsce pobytu: Bydgoszcz
IP zapisane
#5
Cytat: lukas_gab w 28 Luty 2011, 20:10:54
Na której uczelni jeszcze uczą Pascala ? @_@

Nie wiem na jakiej uczelni, ale w bydgoskim elektroniku, w II klasie na informatyka pascal nie zginie nigdy
A co Twojej ostatniej wypowiedzi: zapamiętam ;d ale teraz już robimy wielomiany i schemat Hornera

lukas_gab

*****
Ekspert
Wiadomości: 844
IP zapisane
Zacytuję znajomego w wypowiedzi nt. pascala :

"Pozwólcie mu umrzeć ! "

Nie widzę sensu programować w takim czymś, bo ani komercyjnie nie programuje się w tym już, ani szczególnie mądre to nie jest, bo to imperatyw i jeszcze kiepskiej jakości. Jeżeli myślisz o programowaniu poważnie pomyśl o czymś z rodziny C ( c++ jest posrane ... ale niestety nie zginie ), C# , Java. Zarządzane języki mają same plusy. Jeśli chodzi o paradygmat funkcyjny bez skutków ubocznych to Scala z JVM i niedługo na .NET czy Clojure, Haskell.

Ja też walczę teraz z Hornerem, tylko że w ASM ;p

Luke

****
Zaawansowany użytkownik
Wiadomości: 423
Miejsce pobytu: Zielonka
IP zapisane
Uczcie się C#! Żadne Pascale, czy Javy. W C# napiszesz program na Windows, grę na Xbox 360 z Kinectem, czy aplikację pod Windows Phone 7. ;)

hubert1

*****
Ekspert
Wiadomości: 650
"bo licz± siê wspomnienia, prawda, prawda" :D
Miejsce pobytu: Bydgoszcz
IP zapisane
niestety póki co muszę znać pascala ;//
jeszcze rok i C wita ;d