Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    119

    [c] numeri casuali in un intervallo di interi pari

    Sono alle prese con il manuale ,per imparare il linguaggio [ANSI c] (scopi didattici) ... devo fare un esercizio che mi chiede:

    attraverso una sola istruzione di stampare(a video) un numero "casuale" compreso in quest' intervallo (2,4, 6,8,10)


    se io provo con l'istruzione

    printf("%d" , 2 + (rand() % 9)) non mi funziona visto che l'intervallo [rand() % 9] mi restituisce interi compresi tra 0 e 8.

    e quindi comprende anche i numeri dispari!

    Non ho ancora affrontato il capito degli array , (se puo essere utile a sapersi)

    come posso invocare la funzione rand() su un certo insieme di valori prefissati , oppure risolvere il problema in un modo alternativo? ....grazie!

  2. #2

    Re: [c] numeri casuali in un intervallo di interi pari

    Originariamente inviato da 00FUMI
    risolvere il problema in un modo alternativo? ....grazie!
    rand da 1 a 5 e moltiplichi per 2.
    ;-)

  3. #3
    se hai già trattato l'operatore ternario e l'operatore modulo, potresti fare così:

    codice:
    #include <stdlib.h>
    #include <stdio.h>
    #include <time.h>
    
    int main()
    {
    	int x;
    	srand(time(NULL));
    	printf("%d\n", (x = (1 + rand()%10))%2 == 0 ? x : x+1  );
    }
    in pratica assegni a x un valore random da 1 a 10. se è pari, stampi x. se è dispari, stampi il successivo che è ovviamente pari ed è compreso tra 2 e 10

    edit:

    rand da 1 a 5 e moltiplichi per 2.
    ;-)
    giusto... :P


  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    119
    non non ho ancora trattato l'operatore ternario! ..

    Xmcapp utilissimo suggerimento grazie per la collaborazione!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.