Pokaż wyniki 1 do 8 z 8

Temat: pytanie

  1. #1
    Zarejestrowany
    Oct 2008
    Postów
    2

    Domyślnie pytanie

    Ma ktoś z was może pomysł na algorytm, który dla liczby n podanej przez użytkownika będzie tworzył macierz n na n i wypełniał ją kolejnymi liczbami naturalnymi od 1
    np. dla n=3
    1 2 3
    8 9 4
    7 6 5

  2. #2
    Avatar GSG-9
    GSG-9 jest offline Shapeshifter
    Zarejestrowany
    Jul 2007
    Skąd
    C:\Perl\bin
    Postów
    1,578

    Domyślnie

    dlaczego ten watek trafil do /dev/null
    War, war never changes.

  3. #3
    Zarejestrowany
    Sep 2006
    Postów
    1,227

    Domyślnie

    Ponieważ autor wykazał się brakiem wyobraźni i nie opanował podstaw programowania - pętli for.
    Jednak wątek zostawiłem bo wziąłem pod uwagę, że komuś może się chcieć wytłumaczyć "jak programować".

  4. #4
    Zarejestrowany
    Aug 2008
    Postów
    36

    Domyślnie

    Cytat Napisał Mad_Dud Zobacz post
    Ponieważ autor wykazał się brakiem wyobraźni i nie opanował podstaw programowania - pętli for.
    Jednak wątek zostawiłem bo wziąłem pod uwagę, że komuś może się chcieć wytłumaczyć "jak programować".
    Co :|

    Rzuciłbym kąśliwą uwagę, ale nie będąc pewien jakie mogą być jej konsekwencje, daruję sobie, z władzami lepiej nie zadzierać.

    Po pierwsze - osoba zakładająca wątek bardzo wyraźnie poprosiła o pomysł na algorytm, a nie o kod, a może on wcale nie chce tego zaprogramować, potrzebuje tylko pomysłu na wykonanie tego? :>

    Po drugie - ten problem nie jest taki prosty, w pierwszym momencie nie wiedziałem jak to zrobić i dopiero z kartką i ołówkiem udało mi się wykombinować. Śmiem stwierdzić że pan moderator rzucił okiem, zobaczył że chodzi o tablice n x n i uznał że to banał, a nie rzucił okiem, że autor nie ma na myśli zwyczajnie wypełnionej tablicy a wypełnionej takim "ślimakiem"

    1 2 3
    8 9 4
    7 6 5

    No chyba że z moderatora bardzo inteligentny człowiek i od razu wymyślił jak to zrobić. Tak czy inaczej, to FORUM, miejsce na którym ludzie szukają rozwiązań problemów. Nie da się ukryć, że wielu to dzieci którym nie chce się poszukać na google, ba, sądzę że nawet tego problemu rozwiązanie dałoby rade znaleźć na google, ale w takim razie po co forum jak odpowiedzi na wszystko są w wielkim G?


    A teraz do rzeczy, ja to zrobiłem tak:
    i - indeksy kolumn, j - indeksy wierszy
    x - dodatkowy znacznik który powie że ten kawałek już wypełniliśmy
    n - liczba n
    counter - największa wartość w danym momencie wstawiona w tablice

    4 pętle for
    1:
    Dla j=x wypełniamy tablice od i=x do i<n-x
    2:
    Dla i=n-x-1 (ten -1 dlatego że podając wielkość tablicy 5 mamy indeksy od 0 do 4, wiec ostatnim indeksem jest n-1) wypełniamy tablice od j=x+1 do j<n-x
    3:
    Dla j=n-x-1 wypełniamy od i=n-x-1-1 (dodatkowe -1 dlatego że róg tablicy wypełniliśmy w poprzednim forze) do i>=x
    4:
    Dla i=x wypełniamy od j=n-x-1-1 do j>x

    Na samym końcu robimy x++, poza tymi 4 pętlami. Tablica jest już na brzegach wypełniona, musimy odpalić to jeszcze n-1 razy, wiec cały ten kod wrzucamy w pętle co się wykona n razy i po problemie.


    voila, zrobione u mnie wyświetliło piękną tablice

    Jeśli coś nie będzie działało znaczy albo gdzieś sie machnąłem opisując algorytm na forum albo Ty źle przepisałeś Proponuję Ci najpierw wziąć kartkę i samemu krok po kroku stworzyć taką tablicę ołówkiem, ułatwia ogarnięcie działania algorytmu
    Ostatnio edytowane przez edosinx : 10-19-2008 - 08:45
    "Czasem człowiek sądzi, że ujrzał już dno studni ludzkiej głupoty,
    ale spotyka kogoś, dzięki komu dowiaduje się,
    że ta studnia jednak nie ma dna."
    - Stephen King

  5. #5
    Zarejestrowany
    Oct 2008
    Postów
    2

    Domyślnie

    Cytat Napisał edosinx Zobacz post
    Co :|

    Rzuciłbym kąśliwą uwagę, ale nie będąc pewien jakie mogą być jej konsekwencje, daruję sobie, z władzami lepiej nie zadzierać.

    Po pierwsze - osoba zakładająca wątek bardzo wyraźnie poprosiła o pomysł na algorytm, a nie o kod, a może on wcale nie chce tego zaprogramować, potrzebuje tylko pomysłu na wykonanie tego?

    Po drugie - ten problem nie jest taki prosty, w pierwszym momencie nie wiedziałem jak to zrobić i dopiero z kartką i ołówkiem udało mi się wykombinować. Śmiem stwierdzić że pan moderator rzucił okiem, zobaczył że chodzi o tablice n x n i uznał że to banał, a nie rzucił okiem, że autor nie ma na myśli zwyczajnie wypełnionej tablicy a wypełnionej takim "ślimakiem"

    1 2 3
    8 9 4
    7 6 5

    No chyba że z moderatora bardzo inteligentny człowiek i od razu wymyślił jak to zrobić. Tak czy inaczej, to FORUM, miejsce na którym ludzie szukają rozwiązań problemów. Nie da się ukryć, że wielu to dzieci którym nie chce się poszukać na google, ba, sądzę że nawet tego problemu rozwiązanie dałoby rade znaleźć na google, ale w takim razie po co forum jak odpowiedzi na wszystko są w wielkim G?


    A teraz do rzeczy, ja to zrobiłem tak:
    i - indeksy kolumn, j - indeksy wierszy
    x - dodatkowy znacznik który powie że ten kawałek już wypełniliśmy
    n - liczba n
    counter - największa wartość w danym momencie wstawiona w tablice

    4 pętle for
    1:
    Dla j=x wypełniamy tablice od i=x do i<n-x
    2:
    Dla i=n-x-1 (ten -1 dlatego że podając wielkość tablicy 5 mamy indeksy od 0 do 4, wiec ostatnim indeksem jest n-1) wypełniamy tablice od j=x+1 do j<n-x
    3:
    Dla j=n-x-1 wypełniamy od i=n-x-1-1 (dodatkowe -1 dlatego że róg tablicy wypełniliśmy w poprzednim forze) do i>=x
    4:
    Dla i=x wypełniamy od j=n-x-1-1 do j>x

    Na samym końcu robimy x++, poza tymi 4 pętlami. Tablica jest już na brzegach wypełniona, musimy odpalić to jeszcze n-1 razy, wiec cały ten kod wrzucamy w pętle co się wykona n razy i po problemie.


    voila, zrobione u mnie wyświetliło piękną tablice

    Jeśli coś nie będzie działało znaczy albo gdzieś sie machnąłem opisując algorytm na forum albo Ty źle przepisałeś Proponuję Ci najpierw wziąć kartkę i samemu krok po kroku stworzyć taką tablicę ołówkiem, ułatwia ogarnięcie działania algorytmu
    Dzięki za pomysł za chwilę przetestuję. no tak się składa, że pomyliłem się przy zakładaniu postu . Bawię się już trochę programowaniem i rozumiem działanie pętli for. Jeżeli problem był taki błahy to moderator powinien go rozwiązać pod spodem Więc albo moderator ma taką wyobraźnię i nie chce się nią chwalić (ma do tego prawo ) albo jego wyobraźnia jest ograniczona i też głośno nie chce się tym chwalić

  6. #6
    Zarejestrowany
    Sep 2006
    Postów
    1,227

    Domyślnie

    Panie radler12,

    1) Temat poruszony w tym wątku nie ma nic wspólnego z tematyką forum,
    2) Temat zostawiłem otwarty i uzasadniłem to:
    Jednak wątek zostawiłem bo wziąłem pod uwagę, że komuś może się chcieć wytłumaczyć "jak programować".
    3) Wysłałem wiadomość PM ze wskazówkami, na którą nie dostałem odpowiedzi,
    4) Pan radler12 nie wykazał się kasztą współpracy, nie dał ani jednej linijki kodu - nic. Oczekuje, aby forumowicze zrobili zadanie za niego.
    5) Żaden użytkownik forum (w tym ja) nie zasługuje na takie traktowanie:
    moderator ma taką wyobraźnię i nie chce się nią chwalić (...) albo jego wyobraźnia jest ograniczona i też głośno nie chce się tym chwalić
    Powyższe punkty powinny potwierdzić fakt, że bardzo tolerancyjnie podszedłem do tego wątku. Na przyszłość proszę o spojrzenie na sprawę z kilku stron.

  7. #7
    ryniek jest offline while 1: os.fork()
    Zarejestrowany
    Jan 2008
    Skąd
    tutej!
    Postów
    233

    Domyślnie

    To zadanie na SPOJ?
    Dla początkujących - Algorytmika w Wikipedii. Na dole przydatne linki.
    Ostatnio edytowane przez ryniek : 10-20-2008 - 23:08

  8. #8
    Avatar hedVB
    hedVB jest offline AI
    Zarejestrowany
    Nov 2007
    Postów
    874

    Domyślnie

    Cytat Napisał Mad_Dud Zobacz post
    Panie radler12,

    1) Temat poruszony w tym wątku nie ma nic wspólnego z tematyką forum,
    2) Temat zostawiłem otwarty i uzasadniłem to:

    3) Wysłałem wiadomość PM ze wskazówkami, na którą nie dostałem odpowiedzi,
    4) Pan radler12 nie wykazał się kasztą współpracy, nie dał ani jednej linijki kodu - nic. Oczekuje, aby forumowicze zrobili zadanie za niego.
    5) Żaden użytkownik forum (w tym ja) nie zasługuje na takie traktowanie:


    Powyższe punkty powinny potwierdzić fakt, że bardzo tolerancyjnie podszedłem do tego wątku. Na przyszłość proszę o spojrzenie na sprawę z kilku stron.

    1. Ta pewnie, co ma wspolnego algorytmika z IT?
    2. Rozwiązywanie problemów za pomocą algorytmu nie ma nic wspólnego z jakimkolwiek językiem programowania.
    3. czemu PM? Wątek miałby zostać bez odpowiedzi?
    4. Jakiego kodu Normalne pytanie o pomysł na algorytm, czy na tym forum nie można zadać już żadnego pytania bo wszystko podchodzi pod "prośbę o gotowiec?"
    5. Wybacz Mad_dud, ale Twoje moderatorstwo pozostawia wiele do życzenia :>
    www.lingubot.pl - projekt sztucznej inteligencji.

Podobne wątki

  1. pytanie
    By kakak in forum Hacking
    Odpowiedzi: 9
    Autor: 03-28-2008, 16:14
  2. Pytanie!
    By gzM in forum Anonimowość w sieci
    Odpowiedzi: 14
    Autor: 03-27-2008, 08:02
  3. Pytanie
    By slawek14 in forum Pomysły/Sugestie
    Odpowiedzi: 2
    Autor: 04-14-2007, 10:51
  4. Pytanie
    By Wash&Go in forum Pomysły/Sugestie
    Odpowiedzi: 10
    Autor: 04-12-2007, 12:59

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj