Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    7

    [JAVASCRIPT] RNG incertezza

    Ciao!
    Sto creando un programma ed ho bisogno cheil programma mi restituisca i tre numeri che formano il numero immesso dall'utente. (Sto lavorando solo con i numeri dispari).
    L'utente immette un numero che è la somma di tre cifre, comprese fra 1 e 89.

    var Sd = prompt("Immetti il numero:", "");
    if (Sd<262 && Sd>8) {}
    else{
    alert("Il valore è errato!");
    }

    Poi il programma deve cercare le tre cifre che formano il numero immesso Sd. Quindi le tre cifre, A B e C, devono essere comprese fra 1 e 89 e su di esse deve avvenire un controllo: A + B + C = S1 --> se S1 = Sd, stampa A B C.

    Come posso fare?

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Moderazione

    Ti ho spostato nel forum appropriato, visto che hai sbagliato due discussioni su due.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    ma hai già considerato che la scomposizione può non essere univoca? Ad esempio

    89 + 3 + 9 = 101

    ma anche

    85 + 5 + 11 = 101


    quindi ammesso di trovare un algoritmo che esegua la scomposizione trovi uno dei possibili risultati e non l'unico
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Consideralo un esempio di algoritmo... non e' per nulla controllato e/o ottimizzato

    codice:
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function cerca(num) {
    for (a=1;a<86;a+=2) {
    	for (b=a+2;b<88;b+=2) {
    		for (c=b+2;c<90;c+=2) {
    			if(a+b+c==num) alert(""+num+" = "+a+" + "+b+" + "+c)
    		}
    	}
    }
    }
    cerca(191)
    //-->
    </SCRIPT>
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    codice:
    function trovaTreNumeri(somma) {
    	var	a = Math.ceil(Math.random() * (somma/2 - 3)),
    		b = Math.ceil(Math.random() * (somma/2 + 3)),
    		c = somma - a - b;
    	return "".concat(a, " + ", b, " + ", c, " = ", a+b+c);
    };
    for(var a = 9; a < 262; a++)
    	document.write(trovaTreNumeri(a).concat("
    "));
    :master:
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  6. #6

    Re: [JAVASCRIPT] RNG incertezza

    andr3a, forse non hai notato che (primo post):
    Originariamente inviato da kabeira
    (Sto lavorando solo con i numeri dispari).
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  7. #7
    ho buttato un pò a caso perchè non è chiaro lo scopo di tale algoritmo ... anche perchè un numero è la somma di più numeri, se son 3 possono essere 3 numeri diversi, a parte lo stesso 3 formato da 1 + 1 + 1
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    7
    Grazie Alka e scusami ancora!

    Per quanto riguarda lo scopo del programma è oscuro anche a me, ma mi è stato chiesto di farlo.

    So benissimo che la restituzione delle tre cifre è solo una delle possibilit soluzioni, ma va bene così.

    br1 grazie mille della dritta, ci lavorerò su. ^___^

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    7
    Sono riuscita a risolvere il problema, grazie al consiglio di br1. ^___^
    <HTML>
    <HEAD>
    <SCRIPT Language="Javascript">
    var Sd = prompt("Immetti il numero:", "");
    if (Sd<=261 && Sd>=9) {}
    else {
    alert("Il valore è!");
    }
    function dispari(num) {
    for (a=1;a<86;a+=2) {
    for (b=a+2;b<88;b+=2) {
    for (c=b+2;c<90;c+=2) {
    if(a+b+c==num)
    document.writeln(""+num+" = "+a+" + "+b+" + "+c);
    }}}}
    dispari(Sd);
    </SCRIPT>
    </HEAD>
    </HTML>
    Ora però mi sono resa conto che in alcuni casi i risultati sono anche un centinaio e sono difficili da consultare. Come potrei organizzarli?
    Ho provato con la funzione \t, ma il browser sembra non recepirla. Vorrei provare con una tabella, ma...ammetto di non aver mai approfondito l'argomento tabelle. :P

  10. #10
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Soluzione brutale...

    document.writeln("<pre>"+num+" = "+a+" + "+b+" + "+c+"</pre>");

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

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 © 2025 vBulletin Solutions, Inc. All rights reserved.