Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
La nuova Insta360 X6 introduce sensori Sony da 1/1.1" e un SoC Triple AI a 4nm. Analizziamo le riprese 8K, il primo Dolby Vision nativo a 10-bit nel settore sferico e l'innovativo flusso di lavoro diretto sulla futura versione 22 di DaVinci Resolve.
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Dopo due settimane trascorse al volante della Dacia Spring 2026 possiamo raccontarvi tutto, dalle novità di motore e batteria, fino ai consumi in tutti le situazioni, compresa l'autonomia reale ad alta velocità
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre
Abbiamo messo alla prova la nuova AORUS GeForce RTX 5080 INFINITY WOOD 16G, una delle interpretazioni più particolari della GPU NVIDIA Blackwell. Prestazioni, frequenze operative, temperature, consumi e margini di overclock sono stati confrontati con altre RTX 5080 custom e con la Founders Edition. Il design in legno è solo uno degli elementi distintivi di una scheda che punta a ritagliarsi uno spazio nella fascia più alta del mercato.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-12-2004, 16:49   #1
supertonno
Senior Member
 
L'Avatar di supertonno
 
Iscritto dal: Aug 2003
Città: Rimini
Messaggi: 422
Permutazioni Casuali

Ciao a tutti.
Avrei bisogno di aiuto nel creare delle permuazioni casuali di numeri da 1 a N.
Per esempio 4 permutazioni a caso di una serie di numeri da 1 a 10.
Qualcuno ha in mente come fare senza generarle tutte e po prenderle a caso?

Grazie
supertonno è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:12   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Linguaggio ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:14   #3
supertonno
Senior Member
 
L'Avatar di supertonno
 
Iscritto dal: Aug 2003
Città: Rimini
Messaggi: 422
va benissimo C o C++
supertonno è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:15   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <memory.h>


/* estrazione senza reimbussolamento di m elementi
su una popolazione di n elementi */
int vettore_casuale(int *v, int m, int n)
{
   char *v2;
   int i, j;
   if(m > n)
      return 1;
   v2 = malloc(sizeof(char)*n);
   memset(v2, 0, sizeof(char)*n);
   for(i=0; i<m; i++)
   {
      v[i] = rand()%(n-i) + 1;
      j = 0;
      while(v[i] > 0 )
      {
         if(v2[j++] == 0)
            v[i]--; 
      }
      v2[j-1] = 1;
      v[i] = j;
   }
   free(v2);
   return 0;
} 

#define M	10
#define N	10

int main()
{
	int v[M], i;
	srand((unsigned)time(NULL));
	
	vettore_casuale(v, M, N);
	for(i=0; i<M; ++i)
		printf("%4d", v[i]);
	printf("\n");
	vettore_casuale(v, M, N);
	for(i=0; i<M; ++i)
		printf("%4d", v[i]);
	printf("\n");
	vettore_casuale(v, M, N);
	for(i=0; i<M; ++i)
		printf("%4d", v[i]);
	printf("\n");
	getchar();
	return 0;
}
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:16   #5
supertonno
Senior Member
 
L'Avatar di supertonno
 
Iscritto dal: Aug 2003
Città: Rimini
Messaggi: 422
Grazie Mille, ora lo provo
supertonno è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:21   #6
anx721
Senior Member
 
L'Avatar di anx721
 
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
Questa è l'implementazione di un noto algoritmo, inventato da non ricordo chi, per generare una permutazione di n elementi con complessità lineare:

Codice:
#include <stdlib.h>


void swap(int *a, int *b){
	int temp = *a;
	*a = *b;
	*b = temp;
}


int * perm(unsigned int n){
	int *vect = (int *)malloc(n * sizeof(int));
	int i;
	for(i = 0; i < n; i++)
		vect[i] = i;
	for (i = n-1;i >= 0;i--)
	swap(&vect[i],&vect[(int) ((rand()/(1.0 + RAND_MAX)) * (i+1))]);
	return vect;
}
__________________
Sun Certified Java Programmer
EUCIP Core Level Certified

European Certification of Informatics Professionals

Ultima modifica di anx721 : 23-12-2004 alle 17:23.
anx721 è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:23   #7
supertonno
Senior Member
 
L'Avatar di supertonno
 
Iscritto dal: Aug 2003
Città: Rimini
Messaggi: 422
Quote:
Originariamente inviato da anx721
Codice:
#include <stdlib.h>


void swap(int *a, int *b){
	int temp = *a;
	*a = *b;
	*b = temp;
}


int * perm(unsigned int n){
	int *vect = (int *)malloc(n * sizeof(int));
	int i;
	for(i = 0; i < n; i++)
		vect[i] = i;
	for (i = n-1;i >= 0;i--)
	swap(&vect[i],&vect[(int) ((rand()/(1.0 + RAND_MAX)) * (i+1))]);
	return vect;
}

Lo stavo proprio implementando cosi, con swap casuali...
Ora li provo tutte e due vedo quello che ha prestazioni migliori
supertonno è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:24   #8
anx721
Senior Member
 
L'Avatar di anx721
 
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
la "mia" credo sia piu efficiente
__________________
Sun Certified Java Programmer
EUCIP Core Level Certified

European Certification of Informatics Professionals
anx721 è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:35   #9
atidem
Senior Member
 
L'Avatar di atidem
 
Iscritto dal: Oct 2004
Messaggi: 752
Quote:
Originariamente inviato da anx721
Questa è l'implementazione di un noto algoritmo, inventato da non ricordo chi, per generare una permutazione di n elementi con complessità lineare:

Codice:
#include <stdlib.h>


void swap(int *a, int *b){
	int temp = *a;
	*a = *b;
	*b = temp;
}


int * perm(unsigned int n){
	int *vect = (int *)malloc(n * sizeof(int));
	int i;
	for(i = 0; i < n; i++)
		vect[i] = i;
	for (i = n-1;i >= 0;i--)
	swap(&vect[i],&vect[(int) ((rand()/(1.0 + RAND_MAX)) * (i+1))]);
	return vect;
}

Standard shuffling algorithm
Seminumerical Algorithms (Vol. 2 of "The Art of Computer Programming")

Codice:
 

for (i=0; i<N; i++)
 a[i] = i;
for (j=N-1; j>0; j--) {
 i = choose(0,j); /* Generatore di numeri casuale */
 t = a[i];
 a[i] = a[j];
 a[j] = t;
}

Ultima modifica di atidem : 23-12-2004 alle 17:41.
atidem è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:40   #10
anx721
Senior Member
 
L'Avatar di anx721
 
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
Quote:
Originariamente inviato da atidem
Standard shuffling algorithm
Seminumerical Algorithms (Vol. 2 of "The Art of Computer Programming")

ok, ma se non ricordo l'ha inventato un pezzo grosso tipo knut o qualkunaltro...
__________________
Sun Certified Java Programmer
EUCIP Core Level Certified

European Certification of Informatics Professionals
anx721 è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:42   #11
atidem
Senior Member
 
L'Avatar di atidem
 
Iscritto dal: Oct 2004
Messaggi: 752
Quote:
Originariamente inviato da anx721
ok, ma se non ricordo l'ha inventato un pezzo grosso tipo knut o qualkunaltro...
Knuth
http://www-cs-faculty.stanford.edu/~knuth/index.html

Ultima modifica di atidem : 23-12-2004 alle 17:45.
atidem è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2004, 17:46   #12
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da anx721
la "mia" credo sia piu efficiente
Decisamente...anche perchè quello sopra era fatto per risolvere altri problemi...
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing" Insta360 X6: Dolby Vision, 8K e montaggio "...
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli Due settimane con Dacia Spring 2026: novit&agrav...
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre AORUS GeForce RTX 5080 INFINITY WOOD 16G: una sc...
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e...
Google Pixel 11 arriva su Amazon: preord...
Mega sconti su attrezzi a batteria e rob...
Google Search dà per morto Sam Al...
Il noleggio delle GPU NVIDIA si quota in...
Google: il miliardo di utenti di Gemini ...
Testo invisibile nei PDF, così i modelli...
Le riedizioni di Pokémon Rubino, Zaffiro...
Anche BYD lancia il suo gigante: Sealion...
Sky lancia la sua offerta per la stagion...
Rincari fino al 370% per DeepSeek con ta...
La nuova serie HONOR Magic 9 ha già una ...
GPT-5.6 Sol è 14 volte più veloce con Ul...
Le migliori offerte Amazon del momento: ...
Volkswagen è pronta a lanciare ID...
Qualcomm è pronta a lanciare i chip per ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:38.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v