Jump to content


Photo

[Algorytmy] Pomoc ;f


  • Please log in to reply
2 replies to this topic

#1 Hajtowy

Hajtowy
  • Użytkownicy
  • 3 posts

Posted 11 March 2012 - 11:22

Proszę o pomoc w zadaniu :
Napisz algorytm, który wyszuka najmniejszą liczbę w zadanej tablicy 5x5.

Potrzebuję to w schemacie blokowym, lecz wgl nie mam pojęcia jak zacząć ;/
Proszę o pomoc i wytłumaczenie w miarę możliwości.
  • 0


#2 mw_1975

mw_1975
  • Użytkownicy
  • 2535 posts

Posted 11 March 2012 - 12:23

No sorry, ale nic prostszego nie może być:

1. Definiujesz typ tablicowy 5x5
2. Pobierasz tablicę 5x5
3. Tworzysz trzy zmienne - jedna jako minimum tablicy(n), dwie pozostałe jako indeksy (x,y)
4. Zmiennej minimum przypisujesz pierwszy element tablicy, indeksom pozycje tablicy [1,1].
5. Piszesz dwie pętle, chodzące razem po poziomie i pionie tablicy (zmienne i oraz j)
6. Dla KAŻDEGO elementu sprawdzasz, czy jest mniejszy od obecnego minimum. Jeśli tak, to
- do zmiennej n wpisujesz nową wartość minimum
- do x wartość zmiennej i z pętli
- do y wartość zmiennej j z pętli
7. Na końcu wystarczy wypisać wartości zmiennych n,x i y na ekranie. Koniec

Typ zmiennych dobierasz zależnie od treści zadania.
  • 0
AMD Phenom II 955
Pentagram Karakorum HP-120 AlCu + Arctic Cooling AF1225L
4 GB DDR3 1600 MHz
Było Asus Radeon HD 6950 DCU II, jest XFX 7850 z AC Mono - czego się nie robi dla tej ciszy!
SilentiumPC Deus G1 600W

#3 magik092

magik092
  • Użytkownicy
  • 1555 posts

Posted 11 March 2012 - 21:24

W zasadzie wystarczy jedna zmienna - min :P
Dwie pozostałe - wskaźniki na indeks w pętli - w zasadzie podaje się w definicji pętli.

Wracając. W schemacie to będzie coś takiego:
Dajmy na to postać funkcji (załóżmy, że n to ilość kolumn i wierszy (n na n) - t[n][n]):

Dołączona grafika
Idąc od góry:
Definiujemy nasz algorytm jako funkcję, do której przekazujemy zmienną tablicową (można dodać drugą zmienną określającą rozmiar tablicy, w razie nie kwadratowej tablicy dwie zmienne, etc).
Następnie do zmiennej min (za razem ją inicjujemy/definiujemy) przypisujemy pierwszy element tablicy.
W kolejnym kroku zakładamy pierwszą pętlę poruszającą się po wierszach, druga pętla porusza się po kolumnach. Sprawdzamy, cze dana wartość nie jest przypadkiem mniejsza od aktualnie najmniejszej, jeśli jest to oznaczamy jako najmniejszą.
Po przejrzeniu wszystkich kolumn we wszystkich wierszach, zwracamy wartość zmiennej min czyli wartości najmniejszej w tablicy :)

Pozdrawiam.
  • 0

Dołączona grafika



0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users