scomponi un numero intero come la somma di 20 numeri interi casuali maggiori di zero diversi fra loro

GerryM

Nuovo Utente
12 Dic 2023
1
0
1
Salve a tutti.
Ho un piccolo problema che non riesco a risolvere.
Vorrei, con un codice Javascript, scomporre un numero intero, come la somma di più numeri interi maggiori di zero e diversi fra loro.
Per ora sono riuscito a creare il codice riportato sotto.
Il problema è che mi genera dei numeri interi maggiori di zero, i quali però possono essere uguali fra di loro.
Come posso fare a renderli diversi fra loro?

Codice Javascript:
JavaScript:
const numeroDaScomporre = 30;
const numeroDiTermini = 20;

const risultato = scomponiNumero(numeroDaScomporre, numeroDiTermini);
console.log("Numero da scomporre:", numeroDaScomporre);
console.log("Numeri Generati:", risultato);

function scomponiNumero(numeroDaScomporre, numeroDiTermini) {

    let numeri = [];

    function generaNumeriRandom(min, max) {
      return Math.floor(Math.random() * (max - min + 1)) + min;
    }
 
    let somma = 0;
    for (let i = 0; i < numeroDiTermini - 1; i++) {
      let numeroRandom = generaNumeriRandom(1, numeroDaScomporre - somma - (numeroDiTermini - i - 1));
      numeri.push(numeroRandom);
      somma += numeroRandom;
   }
 
    // Ultimo Numero
    numeri.push(numeroDaScomporre - somma);
 
    return numeri;
}

Probabilmente devo cambiare tutto, però non so.
Lo so che è una domanda banale ma sono un veramente un principiante. ;)
Accetto volentieri ogni consiglio e aiuto.

Grazie mille a tutti.
Buona programmazione
 

WmbertSea

Moderatore
Membro dello Staff
MOD
28 Nov 2014
437
73
28
Ciao, non so se hai già trovato qualche soluzione, ad ogni modo non mi pare una domanda di facile soluzione, per quanto tu possa pensare sia banale.

Se hai trovato da te, ti invito comunque a postare l'eventuale soluzione. In caso contrario, per poter valutare delle soluzioni mirate, sarebbe utile capire meglio il contesto in cui devi utilizzare questo script e il suo reale scopo.

Intanto, esaminando il codice da te riportato, vedo che non è possibile scomporre quel valore 30 come somma di 20 numeri tutti diversi, secondo quanto stai chiedendo.
A prescindere dallo sviluppo dello script, ci sono infatti dei principi matematici da considerare per poter determinare se sia possibile ottenere dei risultati plausibili secondo i termini iniziali; hai fatto queste considerazioni?
 
Discussioni simili
Autore Titolo Forum Risposte Data
Elisacau [Contact form 7] Inserire Numero auto incrementante WordPress 1
G Numero zero null non deve visualizzare nulla PHP 0
F Applicazione PHP/MySQL per prenotazioni: limitare il numero massimo di posti prenotabili PHP 20
M Creare un campo input select quantità di un numero intero prelevato dal db PHP 3
M Numero random non ripetitivo Java 2
Cosina Mostrare immagini da una cartella, ma solo un numero definito PHP 12
Tommy03 Select in ordine per numero di record MySQL 7
C analisi numero parole Programmazione 2
A [PHP] calcolo numero di ore effettuate PHP 7
S [PHP] Convertire un orario in un numero decimale PHP 2
M [PHP] Visualizzare un array partendo dal numero 1 e non 0 PHP 5
L Xampp, wordpress e numero di porta Web Server 1
S [MS Access] trasformare un numero in lettere in un report MS Access 1
N [PHP] Conversione di un numero in ore PHP 2
C [PHP] Numero in formato 1e-5 PHP 0
D profilo fotografico e numero like Social Media Marketing 0
FacebookPrimeStore [VENDO] Profilo facebook con numero telefonico verificato. Occasione. Annunci servizi di Social Media Marketing 1
M VENDO ACCOUNT FACEBOOK DONNA CON NUMERO VERIFICATO Annunci servizi di Social Media Marketing 0
T PHP+MYSQL: stampare record con numero progressivo PHP 3
L [PHP] Problema creazione query a numero di parametri variabile PHP 6
MarcoGrazia [Javascript] Regex per la validazione di un numero di telefono. Javascript 2
Shyson [WordPress] Richiamare nel mio sito numero iscritti da gruppo Facebook WordPress 0
C Contare numero record uguali Database 3
M [PHP] Numero telefonico cliccabile preso dal db PHP 3
xone [PHP] Contare numero dei giorni tra data_in e data_out PHP 11
D [Javascript] aggiornare numero caratteri se campo già popolato Javascript 5
A [PHP] Creare numero ticket casuale PHP 5
S [PHP] numero progressivo su SELECT PHP 8
S [PHP] estrarre numero da stringa PHP 5
ANDREA20 [PHP] Numero ordine PHP 15
cris8380 Inserimento dei dati automatici mediante numero di tessera. PHP 21
filippino Numero Visualizzazioni falsate? Qualcuno ha avuto lo stesso problema? Google Analytics 2
M Problema con ciclo foreach per chiusura apertura div in base al numero di record in database PHP 1
F Incremento numero giornaliero jQuery 1
V numero copie stampate,numero copie per utente Discussioni Varie 0
P ricerca tramite numero id PHP 12
A inventario - numero max record per deposito MS Access 0
B ciclo in PHP per creare numero progressivo PHP 2
B numero progressivo formato da tre colonne MySQL 19
asevenx Contare numero di righe in un form dinamico Javascript 5
L sconti in base al numero di iscritti jQuery 1
C slideshow numero immagini Javascript 5
M verificare se il valore inserito nel campo è un numero ed effettuare dei calcoli Javascript 2
L Aggiungere un numero casuale se esiste già il file PHP 1
L Controllare il numero dei campi segnati Javascript 0
MarcoGrazia Insert into che da errore: numero di parametri non validi.... MySQL 7
F Verificare se in una variabile è presente un determinato numero PHP 2
V Trovare numero unico minore PHP 1
M Errore ORA-01000 massimo numero cursori aperto Oracle 6
A Moevideo.net- $ 50 / 10k views.Payment non consiste nel numero di minuti visti Guadagnare col Sito 0

Discussioni simili