Przegląd
To wyzwanie zostało zainspirowane tym postem StackOverflow Meta . W tym @hakre mówi:
Widziałem projekt naprawdę napisany przez Stackoverflow (noob kopiuje razem z SO tutaj i SO tam), zwykle nie dokonuje się przypisania, co powoduje zakończenie praw na mocy CC. (sic)
Twoim zadaniem jest stworzenie najciekawszego programu, jaki możesz - bez pisania ani jednego wiersza kodu. Możesz używać tylko kodu, który jest już dla Ciebie napisany, zarówno w pytaniach, jak i odpowiedziach StackOverflow. Wszystko, co możesz zrobić, to połączyć taśmę klejącą w całość, najlepiej jak potrafisz. I oczywiście bardzo ważne jest, abyśmy zapewniali odpowiednią atrybucję, abyśmy nie utracili naszych praw.
Zasady
- Musisz dołączyć linki do pytań / odpowiedzi użytych w odpowiedzi.
Nie możesz modyfikować znalezionego kodu, z następującymi wyjątkami:
za. Możesz zmieniać nazwy zmiennych, funkcji i metod. (To nie znaczy, można zmienić metodę do wywołania , zmieniając, powiedzmy
scanner.nextInt()
doscanner.nextLine()
twierdząc, że jesteś zmieniając nazwę metody. Zmiana musi być w definicji lub odniesienie do tego samego podmiotu).b. Możesz odpowiednio dostosować wcięcie.
do. Możesz założyć, że zostały załadowane odpowiednie moduły, aby fragmenty kodu działały. (np.
import
instrukcje dla Java i Python,using
instrukcje dla C # i C ++ oraz ich odpowiedniki we wszystkich językach) Jeśli fragment kodu zawiera literyimport
s, możesz przenieść je na górę kodu.re. Jeśli język wymaga, aby kod był w jakiejś formie metody do wykonania (np.
public static void main(String[] args)
Dla Javy,static int Main(string[] args)
dla C # itd.), Możesz owinąć swój kod odpowiednią metodą. Ale zawartość tej głównej metody musi pozostać niezmodyfikowana.Musisz podać jawną listę wykonanych zmian nazw zmiennych / metod / funkcji / klas.
- Nie możesz wziąć urywków fragmentów (co oznacza, że jeśli weźmiesz blok kodu z postu, weźmiesz całość)
- Podaj krótki opis działania kodu dla osób, które nie są intymne z językiem, którego używasz.
- Konkurs popularności, więc najwięcej entuzjastów wygrywa!
Nudny pięciominutowy przykład (Python 3)
Opis : Odczytuje kilka plików dziennika z bieżącego katalogu i losuje w nich wiersze (ekscytujące, prawda? To całkowicie wygrałoby konkurs popularności)
Źródło
import glob
import random
for file in glob.glob('log-*-*.txt'):
# Etc.
with open(file) as f:
content = f.readlines()
# shuffle the list in place
random.shuffle(content)
# print it
print(content)
Modyfikacje prawne
- Zmieniono nazwę
fname
nafile
z linku 1 - Zmieniono nazwę
b
nacontent
z linku 2
Atrybucje
Odpowiedzi:
C - jeden kalkulator operacji
Zacznijmy od tego.
Naprawdę trudno jest znaleźć fragmenty programów C, które nie są całymi programami. Miałem najwięcej problemów z deklaracjami.
Pobiera prostą integralną operację, taką jak
3+151
lub41/2
na standardowym wyjściu, i przekazuje wynik na standardowe wyjście.źródło