Odtwarzaj dźwięk, dowolny dźwięk [zamknięty]

43

Twój program musi powodować, że komputer wydaje dźwięk, każdy dźwięk.

Najkrótszy kod wygrywa, nie wcześniej niż 10 dni po pierwszej ważnej odpowiedzi. W przypadku remisu wygrywa ten zgłoszony wcześniej.

  • Program powinien działać na rozsądnym, niezbyt częstym komputerze osobistym.
  • Otwieranie wyskakującego okienka, okna komunikatu itp. (Na przykład na stronie internetowej) nie ma znaczenia, ponieważ mogą, ale nie muszą generować dźwięku, w zależności od wielu ustawień.
  • Samo wpisanie niewłaściwego polecenia lub nieprawidłowego znaku na konsoli i otrzymanie sygnału ostrzegawczego nie ma znaczenia, podobnie jak kompilator / interpreter / system operacyjny sygnalizujący błąd lub awarię również się nie liczy. Twój kod musi być poprawnym programem.
vsz
źródło
1
^ G aka dzwonek systemowy lub sygnał dźwiękowy systemu operacyjnego może być także tłumiony w wielu systemach (np. Przełączany na widoczny „dzwonek”) i powinien być traktowany jak odgłos wyskakujących okieków itd. Nie jest to prawidłowe rozwiązanie.
yeti
Każdy program, który wypisuje „\ a” na terminalu kończy się niepowodzeniem, jeśli xterm używa widocznego dzwonka.
kernigh
19
rm /spowoduje wiele krzyków.
cjfaure
Mój lewy fan umarł głośno od jakiegoś czasu. Czy to byłaby poprawna 0-bitowa odpowiedź?
Édouard
1
Myślę, że to pytanie powinno zostać ponownie otwarte. Odpowiedzi żartowe, które polegają na obracaniu się wentylatora lub otwarciu szuflady na płyty CD, są nieprawidłowe, ponieważ pytanie brzmi „odtwórz dźwięk”. Wydaje mi się dość jasne, że wyjście musi pochodzić z głośników w wyniku działania programu, a nie systemu operacyjnego, użytkownika lub sprzętu.
mbomb007,

Odpowiedzi:

21

dc, 2 znaki

ten również wypisuje znak dzwonka:

7P

Uruchom z $ dc <<< 7Plub zapisz 7Pdo pliku i uruchom $ dc file.

Również:

Befunge, 2 znaki

Podobne, ale nieskończenie zapętlające się i piszczące:

7,
daniero
źródło
1
Czy mógłbyś wyjaśnić, jaki to język? Nigdy o tym nie słyszałem, a jego nazwa jest zbyt krótka (i bardzo powszechny skrót), aby można ją było skutecznie wyszukać.
vsz
3
Ze strony podręcznika: dc is a reverse-polish desk calculator which supports unlimited precision arithmetic.- o ile wiem, jest uwzględniony w większości dystrybucji Linuksa / Unixa.
daniero
Jeszcze kilka przykładów, jeśli jesteś zainteresowany: 1 , 2 i 3 . Widziałem też kilka innych, którzy używają go tutaj.
daniero
9
@vsz dc jest oczywiście ukończony, tak jak powinien być każdy lepszy kalkulator, taki jak ghc.
FUZxxl,
4
Wszystkie dźwięki można wyłączyć. Po prostu zmniejsz głośność.
daviewales
49

bash (13)

sudo rm -rf /

Im szybszy dysk twardy, tym lepszy dźwięk. Nie współpracuj z dyskami SSD.
(Nie próbuj tego w domu, sudo rm -rf /usuwa wszystko z dysku twardego)

Daniel
źródło
7
Myślę, że należy przyjść z zastrzeżeniem - „Nie próbuj tego w domu”: D
daniero
22
Tak, to jest dźwięk, jeśli komputer r EADS Twój m ail r eally f ast (rm -rf).
FUZxxl,
70
Czekaj, źle zrozumiałeś. Zadanie polega na tym, aby komputer wydawał dźwięk, a nie użytkownik ... chociaż muszę przyznać, że krzyk był dość imponujący ...
przestał się obracać przeciwnie do zegara
4
Bez niej nic nie robi --no-preserve-root, może poza starożytnymi systemami.
nyuszika7h
1
@ nyuszika7h starożytny jak przed 2005 r.
Jwosty
44

* sh (5)

eject

(nie działa, jeśli nie masz napędu CD / DVD lub podobnego ...)

mykhal
źródło
Ten mi się podoba. Ale na moim Macu (Mac OS X) nie znaleziono polecenia:sh: eject: command not found
Nicolas Barbulesco
3
Nicolas: racja, na Macu, polecenie „wysunięcia” wydaje się znacznie krótsze: (:
mykhal
@ mykhal - Jeśli pójdziesz tą drogą, mam rozwiązanie, które działa na wszystkich współczesnych komputerach Mac: 🔊
Nicolas Barbulesco
1
Nie udaje się to w przypadku OpenBSD. usage: eject [-t] deviceArgument urządzenia nie jest opcjonalny! Najkrótsza, która tu działa, to eject cd09 znaków. Ponadto, jeśli napęd nie ma tacy (jak w przypadku napędu do ładowania szczelin), eject cd0nie będzie hałasował, chyba że w napędzie znajduje się dysk.
kernigh
1
kernigh: masz rację. z drugiej strony może się powieść na wielu systemach bez karty dźwiękowej lub głośnika, w których
zawiodłaby
37

Befunge, 0

Jeśli poprawnie odczytam specyfikację, jest to nieskończona pętla.
Niekończąca się pętla = usłyszysz, jak obraca się Twój procesor.

Johannes Kuhn
źródło
27

sh 7

w|aplay

Odtwarza krótki hałas.

Także 7:

aplay *

montaż

Kolejne rozwiązanie bez dzwonka. Wynikowy plik binarny ma tylko 15 bajtów.

mov al, 182
out 43h, al
out 42h, al
mov al, 16
out 42h, al
mov al, 3
out 61h, al
ret

Zbierz z nasm sound.asm -o sound.com. Można spróbować z dosbox sound.com.

Kopiuj
źródło
9
+1 za nie tylko poleganie na terminalu w tłumaczeniu znaków BEL na sygnały dźwiękowe.
Ilmari Karonen,
25

pieprzenie mózgu: 8

+++++++.

Drukuje znak dzwonka.

pudełko kartonowe
źródło
16
Rozwiązanie +1 BF zarówno zrozumiałe, jak i krótsze niż C.
OldCurmudgeon
15
Uderzenie mózgu jest łatwiejsze do strawienia psychicznego niż C ... powinniśmy wyciągnąć wnioski z tego incydentu.
Camilo Martin,
23

bash (Mac OS X) 5

say a

choć stylistycznie wolę nieco dłużej:

say 'Hello, Code Golf !'
Paul R.
źródło
1
Jeśli Twój komputer Mac jest ustawiony na angielski, możesz to zrobić say 'hahahahahahahahahahahahahahahahahahahahahahahahahaj'.
tomsmeding
21
Oooh ... Mam dostęp ssh do skrzynki
OSX
1
To polecenie działa w AppleScript. Nie wiedziałem, że to też działa w terminalu. Zabawne z ssh!
Nicolas Barbulesco
1
Wniosek dotyczący systemu Linux: espeak...
daviewales
19

Haha, dobry stary kod QBASIC.

BEEP
Soham Chowdhury
źródło
1
Ach, radość, którą można mieć dzięki komendzie PLAY! Dla wspomnienia zobacz np. Ten film .
Jussi M
1
Mam 15 lat, xD. Nauczyliśmy się QBASIC w szkole.
Soham Chowdhury
16

Python 3.3.3, jeden znak

<bell character>

Komunikat o błędzie będzie zawierał dzwonek, powodujący dźwięk.

Python 3.3.3, 10 znaków

Jeśli błędy nie są dozwolone, to rozwiązanie nie wyświetli komunikatu o błędzie, tylko dźwięk.

print('<bell character>')

źródło
Po co głosować, ten kod faktycznie wydaje dźwięk.
1
1 char O_o nice +1
Timtech
13

Golfscript 3

'.'

(gdzie .w rzeczywistości jest to znak DZWONKA)

Reprezentacja HEX powyższego kodu to:

27 07 27
Cristian Lupascu
źródło
2
Ojej, Golfscript znów uderza!
vsz
12

Java - 222

Dość tego znaku dzwonka lub predefiniowanych funkcji sygnału dźwiękowego, to wydaje prawdziwy dźwięk :)

import javax.sound.sampled.*;class S{static{try{SourceDataLine
l=AudioSystem.getSourceDataLine(new
AudioFormat(4000,8,1,0<1,0>1));l.open();l.start();for(byte
i=9;i!=0;i+=9)l.write(new byte[]{i},0,1);}catch(Exception e){}}}
aditsu
źródło
18
Java naprawdę jest do bani dla golfa
stoisko do
1
@boothby nie zawsze sprawdzić to out
aditsu
20
Okej, Java jest do kitu dla golfa, chyba że wyzwaniem jest rzucanie błędów. ;)
stoisko do
@boothby Co z tym? codegolf.stackexchange.com/a/28818/24965
stommestack
2
@JopVernooij To nie jest golf, to zawiły konkurs popularności.
Jwosty
11

DOS Prompt / DOS Script

a:

Wymaga napędu dyskietek 3,5 ":)

svidgen
źródło
Co to za magia?
patrz
1
Powoduje, że DOS próbuje odczytać z dyskietki, co powoduje dźwięk. Błędem jest jednak to, że wymaga napędu dyskietek 3,5 "; napęd dyskietek 5,25" działa jeszcze lepiej.
celtschk
Zawsze. Czy 5.25 nie byłoby normalnie b:?
svidgen
1
Wypróbuj napęd CD z uszkodzonym dyskiem w środku, też działa świetnie :)
Alejandro
Litera napędu w systemie DOS zależała od tego, do których złączy kabla napęd został podłączony (a na nowszych komputerach ustawienie BIOS). Mój pierwszy komputer miał tylko 5,25-calowy dysk i musiałem podłączyć go jako master (co czyni go dyskiem A), ponieważ nie można go uruchomić z urządzenia slave.
Dennis
9

J (2)

a.

Spowoduje to wydrukowanie wszystkich znaków od 0 do 255, w tym dzwonka.

Jeśli muszę to zrobić bez drukowania czegokolwiek innego, są to 4 znaki:

7{a.
marinus
źródło
9

Pascal: 30 znaków

uses Crt;begin
Sound(999)
end.

Wykorzystuje to brak jakiejkolwiek reguły dotyczącej czasu trwania dźwięku. Więc po prostu włącza głośnik na 999 Hz i pozwala na to. (Przynajmniej dopóki inny program nie zadzwoni Nosoundlub komputer nie zostanie wyłączony).

człowiek w pracy
źródło
Czy dźwięk krzyczy nawet po zakończeniu programu? Podoba mi się ten! :-)
Nicolas Barbulesco
@NicolasBarbulesco, dokładnie. Takie było normalne zachowanie wszystkich programów w DOS, w tym programów napisanych w C lub asemblerze.
manatwork
-2: Zmiana 9 Hz: Sound(9).
Erik the Outgolfer,
@ EʀɪᴋᴛʜᴇGᴏʟғᴇʀ, trudno byłoby udowodnić, że dźwięk jest rzeczywiście generowany. Zakres częstotliwości słuchu ludzkiego
manatwork
@manatwork Cóż, dodaj identyczny kod z inną słyszalną częstotliwością. Ponieważ kody są identyczne, można to udowodnić. (zmienia się tylko liczba)
Erik the Outgolfer
8

Matematyka 6

To wywoła dźwięk systemu. Na moim komputerze jest to obecnie ćwierkanie.

Beep[]
DavidC
źródło
8

Bash, 22

W latach 90. mój brat nauczył mnie tego - do pracy w laboratorium komputerowym, w którym ma się zdalny dostęp i zna osobę, która ma być sama w tym laboratorium. Dzieciaki w dzisiejszych czasach nie będą wiedziały, czym jest laboratorium komputerowe ... ale cóż.

cd /dev;cat sda1>audio
boothby
źródło
1
Ja się bash: audio: Permission deniednawet działa pod sudo. :(
Riking
2
Działa
1
Myślę, że masz na myśli dsp, a nie audio. Zobacz poniżej podobny przykład, który napisałem przy użyciu / dev / random
3
lubcat /dev/sda | aplay
TheDoctor
1
@TheDoctor lub aplay</dev/sda(UUOC ;-))
Digital Trauma
7

cat / type / PHP 1

To właściwie poliglot. Działa w cat(lub nazywany Microsoft Cat type) i PHP.

$ xxd file
0000000: 07                                       .

Wykonanie:

$ xxd -r > file
0000000: 07                                       .
^D
$ cat file # cat could be replaced with type (on Windows) or with php
Konrad Borowski
źródło
Co to jest program Jak to uruchomić? To nie jest jasne.
Nicolas Barbulesco
@NicolasBarbulesco: Program jest jednobajtowy ( \x07), jednak ponieważ jest binarny, nie mogę go tutaj wkleić. Możesz uruchomić go w PHP CLI za pomocą php.
Konrad Borowski
To nie jest jasne. Ale to działa! Z cat. Sztuką jest „dzwonek” ASCII char 7.
Nicolas Barbulesco
To nie jest poważna próba.
user48538,
7

pieprzenie mózgu, 5 bajtów

+[.+]

drukuje wszystkie znaki, w tym dzwonek

łagodny
źródło
5

R 9

Dzwonkowy charakter

cat("\a")
Dason
źródło
5

Ruby, 7

$><<?\a

Testowane w systemie Windows z Ruby 1.9.3.

Roy Tinker
źródło
5

DOS, 5

Pośrednio, wymaga współpracy użytkownika.

pause
boothby
źródło
6
Uruchom program. Współpracować. Słuchać.
stoisko do
2
Musisz nacisnąć klawisz ... który wydaje dźwięk. @mana Powiedział, że to pośrednie - pausenie wydało dźwięku, TY zrobiłeś.
Riking
2
@Riking, w jaki sposób jest to zgodne z „Twój program musi sprawić, aby komputer wydawał dźwięk”, część wymagań?
manatwork
5
Nie rozumiem programistów na łamigłówkach, którzy nie potrafią myśleć nieszablonowo.
stoisko do
4
Nie krytykowałem twojej odpowiedzi. Krytykowałem to pytanie. Bezcelowe pytanie oczywiście przyniesie bezcelowe odpowiedzi. Twoja odpowiedź ma więc tyle samo sensu, co każda inna odpowiedź na to głupie pytanie. Daję ci +1.
5

PowerShell, 24 17

Ponieważ nikt jeszcze nie opublikował tej wersji:

[console]::beep()

AKTUALIZACJA: Usunięto częstotliwości, więc używa domyślnej częstotliwości i czasu trwania ( MSDN mówi, że domyślną wartością jest 800 herców i 200 milisekund )

ub3rst4r
źródło
Na pewno możesz użyć przynajmniej mniejszych liczb
Dennis Jaheruddin
4

Python 9 znaków


po uruchomieniu wydaje dźwięk.

print'\a'
Anbarasan
źródło
1
Możesz go skrócić do 8 znaków, jeśli zastąpisz \ago rzeczywistym znakiem dzwonka (kod ASCII 7).
trzęsienie ziemi
Ale jak drukować za pomocą wartości 7?
Anbarasan
1
Możesz wpisać znak dzwonka w swoim edytorze za pomocą Alt+07. Alternatywnie możesz uruchomić ten fragment open("play_a_sound.py", 'w').write("print'"+chr(7)+"'")
kodu,
Mam to teraz. Dzięki !
Anbarasan
4

Jabłkowy (4 znaki)

beep

Spowoduje to odtworzenie domyślnego sygnału dźwiękowego systemu OS X.

Mathias
źródło
4

Matematyka 7

Korzystanie z wbudowanej w Mathematica funkcji zamiany tekstu na mowę.

Speak@x

Sprawi, że powie „x”

Zestawienie
źródło
4

top & aplay - 9

top ma rytm!

top|aplay

Okresowe wyświetlanie czasami nie podaje wystarczająco szybko dźwięku, ale aplaykontynuuje po trochę zrzędzeniu ... :-)

... będzie działać na wielu Linuxach ...

Premia:

Podczas uruchamiania wpisz „s 1 ENTER”, aby uzyskać więcej uderzeń na sekundę. :-)

Bawić się!!! \ o /

yeti
źródło
To czysty geniusz ...: D
Mega Man
3

> <> 3

Jak we wszystkich odpowiedziach, drukuje dzwonek (0x07) na standardowe wyjście.

7o;
Tomsmeding
źródło
3

Tcl, 1 znak

-

zastąpić -dzwonkiem char.
Wydrukuje znak dzwonka jako część komunikatu o błędzie. Dwa razy.

A jeśli uważasz, że to nie jest poprawny program, dodaj to przed znakiem dzwonka:

proc \007 {} {};

Jest to poprawny program, po prostu nie zdefiniowałem polecenia, ponieważ podoba mi się komunikat o błędzie.

Johannes Kuhn
źródło
Czy jest to oparte na jakiejś funkcji Tcl 8.6? W Tcl 8.5 otrzymałem inny wynik: pastebin.com/bh73UF6F Czy jesteś na Windowsie?
manatwork
Nie. Druga część powinna pokazać, że jest to prawidłowy plik Tcl. I powinien emitować 2x sygnał dźwiękowy (komunikat o błędzie zawiera polecenie, które należy wykonać dwukrotnie). Wywołanie polecenia, które nie istnieje, nie jest błędem dla Tcl, jest tylko jedno, jeśli nie może go znaleźć. (np. parrayktóry jest ładowany przy pierwszym użyciu)
Johannes Kuhn
Ups Nie zrozumiałem cię. Myślałem, że masz na myśli, że powinna też sygnalizować dźwiękiem procdeklaracja. (Jeśli chodzi o liczbę puts [string repeat ".\a" 10]sygnałów , prawdopodobnie mój terminal robi coś, ponieważ wyświetla 10 kropek, ale wydaje tylko jeden dźwięk).
manatwork
3

C: 19

main(){puts("\a");}

edit: plik nagłówkowy nie jest potrzebny do „puts”

Trevor Hickey
źródło
2
Możesz usunąć odstęp między #includei <:)
tom
puts (char *); main () {puts ("\ a");} jest mniejszy IMHO.
FUZxxl,
Możesz po prostu usunąć #include.
ugoren,
1
@FUZxxl Jak możesz wyrazić opinię na temat rozmiaru kodu?
Klamka
@DoorknobofSnow Z powodu pierwszej poprawki?
FUZxxl,
2

Rubin 8

 puts"\a"

Testowane w systemie Windows z Ruby 1.9.3.

Cristian Lupascu
źródło