Radzenie sobie z łamigłówką - wskazówki dotyczące programu Excel

Spisie treści

Kris pierwotnie pisał, szukając siatki 26x26x26 liter AZ, gdzie wiersze, kolumny i oś Z nigdy nie zawierają powtarzających się liter.

W poniedziałek 29 kwietnia 2013 r. Podcast utworzył losowe litery między A i Z. Podcast 1698:

Transkrypcja wideo

Podcast MrExcel jest sponsorowany przez „Easy-XL”!

Naucz się programu Excel z podcastu, odcinek 1698 - Generuj losowe litery!

Hej, witaj z powrotem w netcastie, jestem Bill Jelen. Dzisiejsze pytanie od Krisa, Kris chce wygenerować siatkę 26x26 losowych liter, liter od A do Z. A więc zaczynamy: = KOD, KOD litery A podaje nam kod ASCII litery A, to jest 65. A potem to samo, KOD litery Z to 90, 65-90. Naszym celem jest więc wygenerowanie losowych liter, znaków pomiędzy kodem ASCII 65 a kodem ASCII 90. Więc wybiorę tutaj cały mój duży zakres 26x26, a następnie = CHAR! Jakiej postaci chcemy? Chcemy od 65 aż do 90. Więc użyjemy innej funkcji, RANDBETWEEN! RANDBETWEEN da nam losową liczbę od 65 do 90,)). Idziemy, zamierzam nacisnąć Ctrl + Enter tutaj, aby wprowadzić tę samą formułę we wszystkich komórkach zaznaczenia. Mamy teraz siatkę 26x26 losowych liter.Za każdym razem, gdy naciśniemy klawisz F9, otrzymamy nowy zestaw liter. Kiedy w końcu znajdziemy zestaw, który nam się podoba, chcemy go zachować, a następnie oczywiście Ctrl + C do skopiowania, a następnie klawisz prawego przycisku myszy, znajduje się po prawej stronie, między alt = "" a Ctrl i V aby przekonwertować te formuły na wartości. Proszę bardzo, siatka 26x26.

W porządku, hej, chcę podziękować Kris za przesłanie tego pytania, chcę podziękować za zatrzymanie się, do zobaczenia następnym razem z kolejnym netcastem!

We wtorek 30 kwietnia 2013 r. W podcastie omówiono sposób tworzenia losowego rzędu 26 liter bez powtórzeń. Podcast 1699:

W środę 1 maja 2013 roku podcast mówił o matematyce za siatką 26x26 i że matematyka wydaje się wskazywać, że nie jest możliwe zbudowanie takiej siatki. Ale jednak jakoś musi być błąd matematyczny, ponieważ mam taką siatkę, nawet jeśli nie jest bardzo przypadkowa. Podcast 1700:

Później odkryłem niektóre błędy matematyczne, które popełniłem w tym odcinku. Założyłem, że wstawienie litery „B” w drugiej kolumnie siatki wyeliminuje 1/26 pozostałych możliwych wierszy, przy założeniu losowego rozmieszczenia liter w rzędach. Jednak po wyeliminowaniu wszystkich wierszy, które mają „A” w kolumnie 1, wymusza to na kolumnach 2-26, aby miały nieproporcjonalnie większą liczbę A niż inne litery. Tak więc, kiedy usuwasz wszystkie wiersze, które mają B w kolumnie 2, nie usuwasz 1/26 z nich. Usuwasz nieco mniej niż 1/26 z nich. Na przykład użyłem 0,038342, ale rzeczywista liczba wynosiła 0,038247. To najmniejszy błąd, jaki kiedykolwiek popełniłem w życiu, ale kiedy mnożymy przez 403 septyliony, robi to różnicę. Korzystając z makra z jutrzejszego odcinka,Teraz wierzę, że mogę wygenerować 6.255 siatek sexdecillion 26x26x26, które nie mają powtórzeń. To jest 6.255E + 51 lub 6,255,000,000,000,000,000,000,000,000,000,000,000,000,000,000. W programie Excel użyj=FACT(26)*FACT(25).

Oto świetna grafika wyjaśniająca powyższe. Na pierwszym rysunku wybrałem losowo 900 000 losowych wierszy z 407 septillionów możliwości. Każda litera jest mniej więcej losowo rozmieszczona w każdej kolumnie:

Ryc.1

Powiedz, że Twój wiersz 1 ma B w kolumnie 1. Odfiltruj wszystkie wiersze zaczynające się od B. Ponieważ każdy wiersz musi mieć B, to sprawia, że ​​pozostałe 25 kolumn ma więcej B niż cokolwiek innego. Możesz to wyraźnie zobaczyć tutaj:

Rysunek 2

Gdyby litery w kolumnie B były równomiernie rozłożone, można by oczekiwać 3,8461538% każdej litery. Jednak istnieje 4,0153581% liter B i średnio 3,8393857% każdej innej litery. Ponownie, porównanie 3,8461538% z 3,8393857% wydaje się niewielkim błędem, ale po pomnożeniu przez 407 septilionów daje błąd 27 sekstylionów wierszy, które podcast 1700 wyrzucił przez pomyłkę.

W czwartek 2 maja 2013 roku makro, które z powodzeniem buduje siatkę 26x26 bez powtórzeń. Podcast 1701:

Kilku widzów pytało o makro użyte w odcinku 1701. Kliknij prawym przyciskiem myszy i wybierz Zapisz cel jako: Podcast1701.zip

Korzystając z pomysłu opublikowanego w środę przez przeglądarkę YouTube TomSaladin, oto skoroszyt 26x26x26 bez powtórzeń. Kliknij prawym przyciskiem myszy i wybierz Zapisz element docelowy jako: Grid26.zip

Interesujące artykuły...