Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70 porta il concetto di smartphone ultrasottile su un terreno più concreto e accessibile: abbina uno spessore sotto i 6 mm a una batteria di capacità relativamente elevata, un display pOLED da 6,7 pollici e un comparto fotografico triplo da 50 MP. Non punta ai record di potenza, ma si configura come alternativa più pragmatica rispetto ai modelli sottili più costosi di Samsung e Apple
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026
Sono molte le novità che ASUS ha scelto di presentare al CES 2026 di Las Vegas, partendo da una gamma di soluzioni NUC con varie opzioni di processore passando sino agli schermi gaming con tecnologia OLED. Il tutto senza dimenticare le periferiche di input della gamma ROG e le soluzioni legate alla connettività domestica
Le novità ASUS per il 2026 nel settore dei PC desktop
Le novità ASUS per il 2026 nel settore dei PC desktop
Molte le novità anticipate da ASUS per il 2026 al CES di Las Vegas: da schede madri per processori AMD Ryzen top di gamma a chassis e ventole, passando per i kit di raffreddamento all in one integrati sino a una nuova scheda video GeForce RTX 5090. In sottofondo il tema dell'intelligenza artificiale con una workstation molto potente per installazioni non in datacenter
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 20-02-2005, 18:18   #1
ALIEN3
Senior Member
 
L'Avatar di ALIEN3
 
Iscritto dal: Oct 2001
Messaggi: 3015
borland e random

Non riesco a capire come si utilizza randomize in borland: dovrei farmi stampare quattro numeri casuali, compresi tra 0 e 9 ma diversi tra loro
ex:
a=9
b=4
c=1
d=8

grazie a chi mi aiuterà

Byezzzzzzz zzzzzzzz
ALIEN3 è offline   Rispondi citando il messaggio o parte di esso
Old 20-02-2005, 21:00   #2
DarkTemplar
Member
 
L'Avatar di DarkTemplar
 
Iscritto dal: Nov 2004
Messaggi: 220
Randomize lo scrivi una sola volta in tutto il programma.
Solitamente lo scrivo dopo aver dichiarato le variabili nel main.
P.S.:non sono un esperto.
DarkTemplar è offline   Rispondi citando il messaggio o parte di esso
Old 20-02-2005, 23:44   #3
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
Ma che linguaggio è ? Se è C/C++ puoi sempre usare le funzioni standard...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 21-02-2005, 07:59   #4
ALIEN3
Senior Member
 
L'Avatar di ALIEN3
 
Iscritto dal: Oct 2001
Messaggi: 3015
C++e uso borland

Byezzzzzzz zzzzzzzzzzzzzzz
ALIEN3 è offline   Rispondi citando il messaggio o parte di esso
Old 21-02-2005, 09:54   #5
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
Ma Borland quale ? Che versione ?

Comunque puoi usare queste istruzioni standard:

#include <time.h>
#include <stdlib.h>

Poi da richiamare una sola volta nel tuo programma:

srand((unsigned)time(NULL)); //se non ti funziona richiama randomize(); contenuta in conio.h, ma è la versione non standard supportata solo da Borland

Per avere un numero random tra 0 e N-1:

int num = ((double)rand())/(RAND_MAX+1) * N; //se non ti funziona devi usare il corrispondente che funziona solo su Borland: random(N);
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 21-02-2005, 10:41   #6
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
guarda cerca nell'help del borlan ci sono gli esempi fai prima

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 21-02-2005, 15:35   #7
ALIEN3
Senior Member
 
L'Avatar di ALIEN3
 
Iscritto dal: Oct 2001
Messaggi: 3015
Il problema è che non voglio che i numeri siano ripetuti: non è tanto la funzione random, quanto non riesco a capire come non farli apparire uguali. Cioè sull'help non so come si chiama la funzione di disuguaglianza o diverso.

Byezzzzzzz zzzzzzzzzzzz
ALIEN3 è offline   Rispondi citando il messaggio o parte di esso
Old 21-02-2005, 15:37   #8
ALIEN3
Senior Member
 
L'Avatar di ALIEN3
 
Iscritto dal: Oct 2001
Messaggi: 3015
La versione di vorland è Borland builder 5.

Byezzzzzzz zzzzzzzzzz
ALIEN3 è offline   Rispondi citando il messaggio o parte di esso
Old 21-02-2005, 16:26   #9
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
Quote:
Originariamente inviato da ALIEN3
Il problema è che non voglio che i numeri siano ripetuti: non è tanto la funzione random, quanto non riesco a capire come non farli apparire uguali. Cioè sull'help non so come si chiama la funzione di disuguaglianza o diverso.

Byezzzzzzz zzzzzzzzzzzz
ahhh ho capito quello che intendi ... te dici una cosa del genere:

Codice:
#include <stdlib.h>
#include <stdio.h>
#include <time.h>

int Value(){
	return (rand()%10);
}

int main (void){
	int a, b, c, d;
	srand (time (NULL));
	a = Value();
	do{
		b = Value();
	}while (b==a);
	do{
		c = Value();
	}while (c==a || c==b);
	do{
		d = Value();
	}while (d==a || d==b || d==c);

	printf ("a:\t%d\nb:\t%d\nc:\t%d\nd:\t%d\n",a,b,c,d);
	system ("PAUSE");
	return (0);
}
è l'unico metodo dato che rand non si può ricordare quale valore ha restituito.

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 15:46   #10
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
Così è errato perchè può portare in teoria ad un ciclo infinito...
Mentre per quattro variabili:
Codice:
#define N 10

int main (void){
	int a, b, c, d;
	srand (time (NULL));
	a = Value(N);
	b = Value(N-1);
	if (b==a)
	{
		++b;
	}
	c = Value(N-2);
        if(c>=a && c>=b) c+=2;
        else if(c>=a || c>=b) ++c;

	while (c==a || c==b)
		++c;

	d = Value(N-3);
	
	if(d>=a && d>=b && d>=c) d+=3
 	else if((d>=a && d>=b) || (d>=a && d>=c) || (d>=c && d>=b)) d+=2;
 	else if(d>=a || d>=b || d>=c) ++d;

	while (d==a || d==b || d==c)
		++d;

	printf ("a:\t%d\nb:\t%d\nc:\t%d\nd:\t%d\n",a,b,c,d);
	system ("PAUSE");
	return 0;
}
Se ne può fare anche una versione per un numero generico di variabili...

Ultima modifica di cionci : 22-02-2005 alle 18:28.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 17:10   #11
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
scusa ma così ristringo sempre il campo ... non perdo valori??

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 17:16   #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 Fenomeno85
scusa ma così ristringo sempre il campo ... non perdo valori??

~§~ Sempre E Solo Lei ~§~
No perchè se vuoi una estrazione senza ripetizione (pensa ad esempio alla tombola)...ad ogni estrazioni i possibili numeri che possono uscire diminuiscono sempre
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 17:28   #13
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
si ok ma io non elimino il valore estratto ma l'ultimo del range

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 18:16   #14
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
Azzz...ho sbagliato Correggo... Magari con questa corezzione capirai meglio ciò che voglio fare (che rispetta la distribuzione statistica)...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 18:18   #15
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
noo cade un mito

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 18:36   #16
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
In pratica i numeri estratti che hanno comunque una numerazione da 0 a N-2 (prendendo per esempio l'ultimo estratto), sono di fatto l'indice del numero da estrarre all'interno della popolazione rimasta...

Ad esempio da 1 a 10 estraggo 3 e 7...ora voglio estrarre un altro numero...

Estraggo un numero da 1 a 8...mettiamo sia 6...

I numeri rimasti da estrarre sono 1,2,4,5,6,8,9,10...quindi il sesto esemplare di questa popolazione è il numero 8 Il codice sopra vuole fare questo...

Ovviamente per fare estrazioni di questo tipo si fa prima con una funzione generica...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 18:38   #17
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
ok capito

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 18:44   #18
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
Ad esempio questo codice per niente ottimizzato fa al caso suo:
Codice:
/* estrazione senza reimbussolamento di m elementi
su una popolazione di n elementi (da 1 a n) */
int vettore_casuale(int *v, int m, int n)
{
   char *v2;
   int i, j;
   if(m > n)
      return 1;
   v2 = (char *) calloc(n, sizeof(char));
   for(i=0; i<m; i++)
   {
      v[i] = (((double)rand())/RAND_MAX)*(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;
}
Altre soluzioni sarebbero molto semplici (come codice, ma magari di una durata temporale maggiore)...ad esempio tramite un vector in C++ che contiene tutti gli elementi della popolazione...man mano che un elemento viene estratto basta indicizzarlo tramite il numero random tirato su e successivamente eliminarlo dal vettore con erase...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2005, 20:37   #19
ALIEN3
Senior Member
 
L'Avatar di ALIEN3
 
Iscritto dal: Oct 2001
Messaggi: 3015
Non mi collego un giorno e trovo tutto questa bella robba da sperimentare

Byezzzzzzzz zzzzzzzzzzz
ALIEN3 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza Motorola edge 70: lo smartphone ultrasottile che...
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026 Display, mini PC, periferiche e networking: le n...
Le novità ASUS per il 2026 nel settore dei PC desktop Le novità ASUS per il 2026 nel settore de...
Le novità MSI del 2026 per i videogiocatori Le novità MSI del 2026 per i videogiocato...
I nuovi schermi QD-OLED di quinta generazione di MSI, per i gamers I nuovi schermi QD-OLED di quinta generazione di...
NVIDIA cambia strategia: perché i...
iPhone 17 e 17 Pro costano meno su Amazo...
Speciale TV Amazon: QLED 4K da 43 a 65 p...
Anthropic lancia Claude for Healthcare: ...
Le scope elettriche Tineco stanno domina...
Questi robot aspirapolvere stanno facend...
Malware AI arriva su macOS: un finto cli...
Formula E Mexico City, solita gara folle...
Instagram nega il data breach: la presun...
Cloudflare contro l'Italia: 'Piracy Shie...
Space Forge genera plasma in orbita: pas...
Australia, Meta chiude oltre mezzo milio...
2 mini PC con super processori Intel Cor...
La Xiaomi SU7 Ultra distrugge una Ferrar...
Jensen Huang: la narrativa apocalittica ...
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: 10:51.


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