Kuinka

tehdään

Pitäisi tehdä ohjelma, joka tuottaa satunnaislukuja. Vaikkapa väliltä 1,...,10000. Kauanaikaa sitten se Borlandin Turbo-C:ltä onnistui. Nykyisin ohjelmointiin käytän Microsoft Visual C 6.0. Se ei näy tuntevan komentoja random() ja randomize(). Käytössö oleva kääntäjä on lisäksi jonkinlainen mainosversio, niin ettei siinä ole mitään ohjeitakaan. Kuinkahan pitäisi menetellä ?

13

464

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Noihan on jotain antiikkia.. Ota ihmeessä vaikka joku GCC. Standardi sanoo, että stdlib.h:sta löytyy srand() mihin laitetaan siemenluku satunaislukugeneraattorille (eli ota vaikka kellosta se) ja rand() sitten arpoo satunnaislukuja.

      • Yksi Visual

        vastaa ainakin kymmentä gcc:tä... ;)

        No, asiaan, nuo M-Karin mainitsemat funktiot toimivat tietenkin myös Visual C 6.0:ssa.


      • Pentti Nelonen
        Yksi Visual kirjoitti:

        vastaa ainakin kymmentä gcc:tä... ;)

        No, asiaan, nuo M-Karin mainitsemat funktiot toimivat tietenkin myös Visual C 6.0:ssa.

        onko Windovsin kerneli käännetty Visual ceellä vai basicilla?


      • Yksi Visual kirjoitti:

        vastaa ainakin kymmentä gcc:tä... ;)

        No, asiaan, nuo M-Karin mainitsemat funktiot toimivat tietenkin myös Visual C 6.0:ssa.

        Selvästikään et paljoa tiedä ohjelmoinnista jos jotain Visual C 6.0:aa ylistät. Visual Studiolla nyt ei muutenkaan ole oikein muuta merkitystä kuin 64-bittisten binäärien kääntäminen Windowsiin, ja noin vanhalla ei niitäkään tee.

        Itseasiassa kun kyseessä on jotain 12v vanha versio ohjelmasta niin alkaa olla jo riski, että se hajoaa ja uutta versiota kun hommaa niin on taas ihan erilainen. Lisäksi noin vanhat kääntäjät tekee todella hidasta koodia.

        Toisin sanoen, GCC voittaa Visual C 6.0:n joka asiassa. Tuo on yksinkertaisesti turha.


      • tehdään

        Nyt kääntäjä tunnistaa jo funktion srand(), niin että oikeilla jäljillä ollaan. Ovat vain nimen muuttaneet. Mutta ongelma on se etten tiedä, miten jatkaa: Oletetaan että muuttujalle unsigned int muuttuja pitää antaa satunnainen kokonaislukuarvo väliltä 1-->10000. srand() tekee jotakin, mutta sitä ei voi sijoittaa muuttuja'n arvoksi, se ei palauta mitään. Lisäksi en tiedä mitä sulkujen sisässä annettava luku merkitsee. Pitäisi pystyä tekemään sijoitus muuttuja ='satunnaisluku väliltä 1->10000'. (Tämän kääntäjän on sisaren poika ilmaiseksi saanut jostakin (luultavasti kuitenkin varastanut), eikä se sisällä minkäänlaisia ohjeita. Mutta ohjelmia sillä kyllä voi tehdä.)


      • b.
        tehdään kirjoitti:

        Nyt kääntäjä tunnistaa jo funktion srand(), niin että oikeilla jäljillä ollaan. Ovat vain nimen muuttaneet. Mutta ongelma on se etten tiedä, miten jatkaa: Oletetaan että muuttujalle unsigned int muuttuja pitää antaa satunnainen kokonaislukuarvo väliltä 1-->10000. srand() tekee jotakin, mutta sitä ei voi sijoittaa muuttuja'n arvoksi, se ei palauta mitään. Lisäksi en tiedä mitä sulkujen sisässä annettava luku merkitsee. Pitäisi pystyä tekemään sijoitus muuttuja ='satunnaisluku väliltä 1->10000'. (Tämän kääntäjän on sisaren poika ilmaiseksi saanut jostakin (luultavasti kuitenkin varastanut), eikä se sisällä minkäänlaisia ohjeita. Mutta ohjelmia sillä kyllä voi tehdä.)

        http://www.daniweb.com/forums/thread1769.html


      • tehdä

      • tehdään kirjoitti:

        Nyt kääntäjä tunnistaa jo funktion srand(), niin että oikeilla jäljillä ollaan. Ovat vain nimen muuttaneet. Mutta ongelma on se etten tiedä, miten jatkaa: Oletetaan että muuttujalle unsigned int muuttuja pitää antaa satunnainen kokonaislukuarvo väliltä 1-->10000. srand() tekee jotakin, mutta sitä ei voi sijoittaa muuttuja'n arvoksi, se ei palauta mitään. Lisäksi en tiedä mitä sulkujen sisässä annettava luku merkitsee. Pitäisi pystyä tekemään sijoitus muuttuja ='satunnaisluku väliltä 1->10000'. (Tämän kääntäjän on sisaren poika ilmaiseksi saanut jostakin (luultavasti kuitenkin varastanut), eikä se sisällä minkäänlaisia ohjeita. Mutta ohjelmia sillä kyllä voi tehdä.)

        Mitä järkeä sitä on sitten on sitten käyttää kun ilmaiseksi saa laillisen ja paremman? Jopa Microsoftilta itseltään.


    • Visual Studio
      • Varmuudella voin sanoa, että ei ole sekään fiksua vaan siinä ei pääse osaaminen kertymään mikä on tärkeää ohjelmoinnissa. Visual C 6.0 on jo vanhentunut, samoin Turbo C. Mutta GCC on kehittynyt tasaisesti vuodesta 1987 lähtien ja kaikki toiminta käytännössä kaikki toiminnot on vastaavat ja kääntäjä vaan parantunut, että tekee nopeampaa koodia, tukee paremmin standardeja ja jne. Itse olen käyttänyt kyseistä softaa jotain 15v eikä ole tarvinut omaksua turhaan samoja perusasioita uudestaan.

        Itseasiassa GCC on ollut jotain 11v käytännössä defacto C/C kääntäjä, se on oikeasti todella niin merkittävä softa. Tässä vähän lisää Wikipediasta:

        "As well as being the official compiler of the GNU operating system, GCC has been adopted as the standard compiler by most other modern Unix-like computer operating systems, including GNU/Linux, the BSD family and Mac OS X. GCC has been ported to a wide variety of processor architectures, and is widely deployed as a tool in commercial, proprietary and closed source software development environments. GCC is also available for most embedded platforms, for example Symbian,[2] AMCC and Freescale Power Architecture-based chips.[3] The compiler can target a wide variety of platforms, including videogame consoles such as the PlayStation 2[4] and Dreamcast.[5] Several companies[6] make a business out of supplying and supporting gcc ports to various platforms, and chip manufacturers today consider a GCC port almost essential to the success of an architecture."

        Ja mitä Microsoftiin tulee, GCC on osana Microsoftin tekemää laajennosta Windowsiin. Taisi olla valmiina Ultimate versioissa jos en ihan väärässä ole mutta Windows binääreitä varten suosittelen kyllä MinGW:tä.


      • microsoft-vihasi
        M-Kar kirjoitti:

        Varmuudella voin sanoa, että ei ole sekään fiksua vaan siinä ei pääse osaaminen kertymään mikä on tärkeää ohjelmoinnissa. Visual C 6.0 on jo vanhentunut, samoin Turbo C. Mutta GCC on kehittynyt tasaisesti vuodesta 1987 lähtien ja kaikki toiminta käytännössä kaikki toiminnot on vastaavat ja kääntäjä vaan parantunut, että tekee nopeampaa koodia, tukee paremmin standardeja ja jne. Itse olen käyttänyt kyseistä softaa jotain 15v eikä ole tarvinut omaksua turhaan samoja perusasioita uudestaan.

        Itseasiassa GCC on ollut jotain 11v käytännössä defacto C/C kääntäjä, se on oikeasti todella niin merkittävä softa. Tässä vähän lisää Wikipediasta:

        "As well as being the official compiler of the GNU operating system, GCC has been adopted as the standard compiler by most other modern Unix-like computer operating systems, including GNU/Linux, the BSD family and Mac OS X. GCC has been ported to a wide variety of processor architectures, and is widely deployed as a tool in commercial, proprietary and closed source software development environments. GCC is also available for most embedded platforms, for example Symbian,[2] AMCC and Freescale Power Architecture-based chips.[3] The compiler can target a wide variety of platforms, including videogame consoles such as the PlayStation 2[4] and Dreamcast.[5] Several companies[6] make a business out of supplying and supporting gcc ports to various platforms, and chip manufacturers today consider a GCC port almost essential to the success of an architecture."

        Ja mitä Microsoftiin tulee, GCC on osana Microsoftin tekemää laajennosta Windowsiin. Taisi olla valmiina Ultimate versioissa jos en ihan väärässä ole mutta Windows binääreitä varten suosittelen kyllä MinGW:tä.

        paistaa läpi kaikista kommenteistasi. Pahinta on kuitenkin asiantuntemuksesi kehno taso.


      • #
        microsoft-vihasi kirjoitti:

        paistaa läpi kaikista kommenteistasi. Pahinta on kuitenkin asiantuntemuksesi kehno taso.

        Laita jotain argumentteja. Tuollainen kitinä ei vakuuta.


    • ohjehia

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Metsäkoneen kuljettaja huuteli tutkijalle

      "voisit kyllä ottaa rintaliivit pois ennen kuin tulet minulle juttelemaan, hän sanoo." https://yle.fi/a/74-20106446 On
      Suomussalmi
      704
      10030
    2. Suomi on täysin sekaisin

      Jo ties monettako päivää hirveä itku ja poru jostain helvetin nilviäisistä. https://www.is.fi/taloussanomat/art-2000010
      Maailman menoa
      412
      4390
    3. Kaikki ei vieläkään usko luontokatoon.

      Suomussalmen Hukkajoella foliohattu metsäkoneen kuljettaja tuhosi tuhansia harvinaisia jokihelmisimpukoita eli raakkuja
      Kajaani
      90
      3016
    4. Sano vain suoraan, että nyt riittää

      ettei kiinnosta. Sano, että lopeta! En ihmettelisi, jos olet saanut tarpeeksesi ja toivot minun ymmärtävän lopettaa. Eh
      Ikävä
      43
      2855
    5. Mari Rantanen asettaa sairaan lapsen edun oman uransa edelle - (tekikö Marin samaa)

      Noin toimii kunnon vastuuntuntoinen äiti, mutta siitäkin nämä mt-ongelmaiset vasemmistolaiset häntä täällä haukkuvat. "
      Maailman menoa
      230
      2668
    6. Ohhoh! Ex-pääministeri Sanna Marinin Joni-rakas paljasti ilouutisen: "Tässä kuussa..."

      Sanna Marin on ollut naimisissa Markus Räikkösen kanssa. Nyt hänen seurassaan on usein julkkishiusmuotoilija Joni Willb
      Kotimaiset julkkisjuorut
      55
      2664
    7. Mitä ajattelet aina

      Kun hän tulee näköpiiriin?
      Ikävä
      153
      1855
    8. Luokatonta toimintaa

      Tyrmistyttävää toimintaa Stora Enson korjuu yrittäjältä Hukkajoella. Täyttä piittaamattomuutta laeista ja luontoarvoista
      Suomussalmi
      71
      1710
    9. Ensimmäisestä kohtaamisesta saakka

      minulla on ollut hämmentynyt olo. Miten voit tuntua siltä, että olisin tuntenut sinut aina? Sinun kanssasi on yhtä aikaa
      Ikävä
      14
      1620
    10. Maailmankuulu homopingviini on kuollut

      Minä niin toivoin että pariskunta olisi saatu kunniavieraiksi ensi kesän Prideen. 💔 "Maailmankuulu homopingviini on k
      Lapua
      6
      1423
    Aihe