Löytyykö linuxista tai c-kielestä tälläisiä basic tyyppisiä komentoja. Voiko c-kielessä ajaa komentoskriptejä. sound(500) sleep(500) sound(1000) sleep(500)
Linux ohjelmointi ongelma
13
1226
Vastaukset
- (x,y,z)
Ainakin pythonilla onnistuu osittain kunhan vaan käynnistät python-tulkin komennolla "python". Tosin syntaksi on hieman eri: import time time.sleep(10) Tuo sound on hieman ongelmallisempi - mitä sen itse asiassa pitäisi tehdä? Myös ihan bashissa tai mikä shell sinulla onkaan käytössä tuo toimii. C taas on käännettävä kieli eikä siinä mielessä komentoskriptit onnistu. Mutta toki voit tehdä vaikka ohjelman tyyliin #include int main(void) { sleep(10); return 0; } joka suorittaa tuon sleep-komennon. Onnistuu myös kymmenillä ellei sadoilla muilla kielillä. Mitä oikeastaan haluat saada tehtyä?
- basic_helpompi
Pitäisi äänikortilla muuttaa kirjaimet ääneksi c-koodissa. esim. a=taati basic kielinen koodi; sound(1000) sleep(500) sound(500) sleep(500)
- hemmoit
"Voiko c-kielessä ajaa komentoskriptejä" http://linux.about.com/library/cmd/blcmdl3_execvp.htm Tai system() kutsu standardi C. Tai jos haluat tulosteen scripistä popen() posix standardista. Sleep löytyy suoraan. http://linux.die.net/man/3/sleep Beep http://www.frank-buss.de/beep/index.html
- basic_helpompi
beep ei toimi. Olen kokeillut läpi kaikki echo variaatiot.
- se...
basic_helpompi kirjoitti:
beep ei toimi. Olen kokeillut läpi kaikki echo variaatiot.
et vaan osaa.
- hemmoit
basic_helpompi kirjoitti:
beep ei toimi. Olen kokeillut läpi kaikki echo variaatiot.
Jos luit ohjeet oikein "Note: you need write access to /dev/tty10 or you have to run this program as root." mitä tuo c koodin pätkä sanoi ? virhekoodeja ja niin edelleen. http://groups.google.fi/group/sfnet.atk.linux/browse_thread/thread/e8e7524b09e2172e/fb87adbf7bfec69?hl=fi&ie=UTF-8&oe=utf-8&q=KDMKTONE#0fb87adbf7bfec69
- öaiajaklm
hemmoit kirjoitti:
Jos luit ohjeet oikein "Note: you need write access to /dev/tty10 or you have to run this program as root." mitä tuo c koodin pätkä sanoi ? virhekoodeja ja niin edelleen. http://groups.google.fi/group/sfnet.atk.linux/browse_thread/thread/e8e7524b09e2172e/fb87adbf7bfec69?hl=fi&ie=UTF-8&oe=utf-8&q=KDMKTONE#0fb87adbf7bfec69
Tavis-uuseri voi ajaa ohjelman noiden komentojen jälkeen (sudotus tai roottina): sudo chown root morse-beep sudo chmod u s morse-beep
- öaiajaklm
import os import time def beep(msec): ....os.system('beep -l ' str(msec)) def sleep(msec): ....time.sleep(msec/1000.0) beep(500) sleep(500) beep(1000) sleep(500) .... = tab-sisennys Noin menisi Pythonilla. Paketti beep (c-binääri) asennettuna pakettihallinnan kautta. Aakkoset muut merkit Pythonin dictionary tietorakenteen avulla ja funktio joka ottaa inputtina merkkijonon ja morsettaa sen. Ei tuu montaa rivii koodii...
- asdadaasd
Sä sitte jaksat sitä pythonias sotkee tonne väliin vaikka ei asialla ole mitään tekemistä
- öaiajaklm
asdadaasd kirjoitti:
Sä sitte jaksat sitä pythonias sotkee tonne väliin vaikka ei asialla ole mitään tekemistä
Voi, kauheesti anteeks'. Oli tarkoitus vain laittaa vaihtoehto ja pohtia kannattaako tollaista edes tehdä C:llä, mutta unohdin kirjoittaa No tuossapa herralle/rouvalle/neidille sitä C:tä: #include #include #include #include #include #include #include #include #include #define ERROR -1 #define TI 250 #define TAA 500 #define PAUSE 250 #define CHAR_PAUSE 500 #define WORD_PAUSE 1000 void msleep(int msec) { usleep(msec*1000); } void beep(int msec) { int beep = (msec
- basic_parempi
öaiajaklm kirjoitti:
Voi, kauheesti anteeks'. Oli tarkoitus vain laittaa vaihtoehto ja pohtia kannattaako tollaista edes tehdä C:llä, mutta unohdin kirjoittaa No tuossapa herralle/rouvalle/neidille sitä C:tä: #include #include #include #include #include #include #include #include #include #define ERROR -1 #define TI 250 #define TAA 500 #define PAUSE 250 #define CHAR_PAUSE 500 #define WORD_PAUSE 1000 void msleep(int msec) { usleep(msec*1000); } void beep(int msec) { int beep = (msec
KIITOS koodista joka TOIMII. Kiinnostaisi funktio joka morsettaa stringin.
- öaiajaklm
basic_parempi kirjoitti:
KIITOS koodista joka TOIMII. Kiinnostaisi funktio joka morsettaa stringin.
char *morse[256] = {}; /*globaali*/ void init_morse_array() { morse['a'] = ".-"; morse['b'] = "-..."; /* and so on ...*/ } void morse_char(char *ch) { while (*ch != 0 ) { if (*ch == '.') beep(TI); if (*ch == '-') beep(TAA); printf("%c", *ch); fflush(stdout); msleep(PAUSE); ch ; } printf(" "); } void morse_str(char *cp) { printf("%s\n", cp); while (*cp != 0 ){ if (*cp == ' ') msleep(WORD_PAUSE); else { if (morse[*cp]!= 0) { morse_char(morse[*cp]); msleep(CHAR_PAUSE); } } cp ; } printf("\n"); } Laitat noi edellisen koodin kanssa, niin voi käyttää näin: int main() { char *str = "ab ba"; init_morse_array(); morse_str(str); morse_str("@a"); return 0; } Morse-taulukkoon kannattaa laittaa myös isot kirjaimet. Tietysti pitäisi vielä tehdä jokin järkevä tapa syöttää sanat/lauseet tolle, mutta se on jo toinen juttu.
- basic_parempi
öaiajaklm kirjoitti:
char *morse[256] = {}; /*globaali*/ void init_morse_array() { morse['a'] = ".-"; morse['b'] = "-..."; /* and so on ...*/ } void morse_char(char *ch) { while (*ch != 0 ) { if (*ch == '.') beep(TI); if (*ch == '-') beep(TAA); printf("%c", *ch); fflush(stdout); msleep(PAUSE); ch ; } printf(" "); } void morse_str(char *cp) { printf("%s\n", cp); while (*cp != 0 ){ if (*cp == ' ') msleep(WORD_PAUSE); else { if (morse[*cp]!= 0) { morse_char(morse[*cp]); msleep(CHAR_PAUSE); } } cp ; } printf("\n"); } Laitat noi edellisen koodin kanssa, niin voi käyttää näin: int main() { char *str = "ab ba"; init_morse_array(); morse_str(str); morse_str("@a"); return 0; } Morse-taulukkoon kannattaa laittaa myös isot kirjaimet. Tietysti pitäisi vielä tehdä jokin järkevä tapa syöttää sanat/lauseet tolle, mutta se on jo toinen juttu.
Kokeilen heti maanantaina. Uskon että toimii hyvin.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Hengenvaaralliset kiihdytysajot päättyivät karmealla tavalla, kilpailija kuoli
Onnettomuudesta on aloitettu selvitys. Tapahtuma keskeytettiin onnettomuuteen. Tapahtumaa tutkitaan paikan päällä yhtei1746431- 1471764
- 1131548
- 511300
Suureksi onneksesi on myönnettävä
Että olen nyt sitten mennyt rakastumaan sinuun. Ei tässä mitään, olen kärsivällinen ❤️46972Möykkähulluus vaati kuolonuhrin
Nuori elämä menettiin täysin turhaan tällä järjettömyydellä! Toivottavasti näitä ei enää koskaan nähdä Kauhavalla! 😢37928Älä mies pidä mua pettäjänä
En petä ketään. Älä mies ajattele niin. Anteeksi että ihastuin suhun varattuna. Pettänyt en ole koskaan ketään vaikka hu96887Reeniähororeeniä
Helvetillisen vaikeaa työskennellä hoitajana,kun ei kestä silmissään yhtään läskiä. Saati hoitaa sellaista. Mitä tehdä?5839Tarvitsemme lisää maahanmuuttoa.
Väestö eläköityy, eli tarvitsemme lisää tekeviä käsiä ja veronmaksajia. Ainut ratkaisu löytyy maahanmuutosta. Nimenomaan233793- 41789