Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI
Con velocità teoriche fino a 11 Gbps, gestione tramite app intelligente e protezione avanzata dei dispositivi, Roamii BE Pro porta il Wi‑Fi 7 tri‑band nelle abitazioni più esigenti. Un sistema Wi-Fi Mesh proposto da MSI allo scopo di garantire agli utenti una rete fluida e continua capace di sostenere streaming 8K, gaming competitivo e le applicazioni moderne più esigenti in termini di banda
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Mate X7 rinnova la sfida nel segmento dei pieghevoli premium puntando su un design ancora più sottile e resistente, unito al ritorno dei processori proprietari della serie Kirin. L'assenza dei servizi Google e del 5G pesa ancora sull'esperienza utente, ma il comparto fotografico e la qualità costruttiva cercano di compensare queste mancanze strutturali con soluzioni ingegneristiche di altissimo livello
Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 25-01-2011, 08:58   #1
Loris14
Member
 
L'Avatar di Loris14
 
Iscritto dal: Sep 2010
Messaggi: 280
[C++] Programma Che Riconosca Se Un Numero E' Primo

Ciao ragazzi, ho bisogno di creare un programma che dato un numero, riconosca se questo è primo...

Il programma deve essere di questo tipo...

Codice:
#include <cstdlib>
#include <iostream>
#include <conio.h>
using namespace std;

int main(int argc, char *argv[])
{
    int NUM, ;
    cout << "Dato Un Numero, Dire Se E' Un Numero Primo";
    cout << "\n \n";
    cout << "Inserisci Il Numero: ";   
    cin >> NUM;
    cout << "\n";
    while (  )
       { 
        
       }
    cout << "Testo Finale";
    cout << "\n \n";
    cout << "FINE";
    getch ();
    return EXIT_SUCCESS;
}
Sapete come fare???

Grazie!!!
Loris14 è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2011, 11:14   #2
clockover
Senior Member
 
L'Avatar di clockover
 
Iscritto dal: Oct 2004
Messaggi: 1945
un numero quando è primo è divisibile solo per lui stesso e uno.. quindi basta che implementi un controllo dei resti della divisione da 1 (escluso) a n-1 (incluso)
clockover è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2011, 11:16   #3
manuel17787
Member
 
Iscritto dal: Jun 2008
Messaggi: 75
Devi fare un ciclo da 2 a NUM-1. Ad ogni passo controlli se il resto della divisione tra NUM e il contatore è 0. Se trovi almeno un resto a 0, vuol dire che non è primo, altrimenti è primo..
manuel17787 è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2011, 13:38   #4
Mulder90
Senior Member
 
L'Avatar di Mulder90
 
Iscritto dal: Aug 2008
Città: Firenze
Messaggi: 317
siccome per numeri grandi potrebbe essere necessario molto tempo per vedere se un certo n è primo cerca di semplificarti la vita.
1) se il numero è pari non è primo. quindi if n%2==0 return false
2) il ciclo a questo punto può essere fatto solo sui numeri dispari.
3) con un po di matematica si riesce a dimostrare che non è necessario fare un ciclo che arrivi fino ad n. Infatti basta arrivare fino alla radice di n.

Cerca di fare qualcosa del genere!
Mulder90 è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2011, 14:35   #5
mariusTrio
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 2
Dovresti:
-controllare che sia disparo
-controllare che non abbia fattori

per trovarti i fattori basta fare un ciclo con indice da 3 a N-1, che avanza di 2 ad ogni iterazione (così hai indici solo dispari) poi all'interno del ciclo basta che controlli che il risultato dell'operazione N mod i (dove N è il tuo numero mentre i è l'indice) sia diverso da zero. Se per tutti gli indici il risultato è diverso da zero, allora il numero è un numero disparo.
Buon Lavoro
mariusTrio è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2011, 17:52   #6
cdere
Senior Member
 
L'Avatar di cdere
 
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
Quote:
Originariamente inviato da Mulder90 Guarda i messaggi
siccome per numeri grandi potrebbe essere necessario molto tempo per vedere se un certo n è primo cerca di semplificarti la vita.
1) se il numero è pari non è primo. quindi if n%2==0 return false
2) il ciclo a questo punto può essere fatto solo sui numeri dispari.
3) con un po di matematica si riesce a dimostrare che non è necessario fare un ciclo che arrivi fino ad n. Infatti basta arrivare fino alla radice di n.

Cerca di fare qualcosa del genere!
ottimo, quoto Mulder
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum
cdere è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2011, 09:33   #7
Loris14
Member
 
L'Avatar di Loris14
 
Iscritto dal: Sep 2010
Messaggi: 280
Non riesco a scrivere sul programma le cose che mi avete suggerito :S

Sono agli inizi...
Loris14 è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2011, 09:39   #8
dierre
Senior Member
 
L'Avatar di dierre
 
Iscritto dal: Sep 2004
Città: Interamnia Urbs
Messaggi: 2126
Intanto posta quello che hai già scritto.
__________________
Un wormhole (buco di tarlo, in italiano), detto anche Ponte di Einstein-Rosen, è una ipotetica caratteristica topologica dello spaziotempo che è essenzialmente una "scorciatoia" da un punto dell'universo a un altro, che permetterebbe di viaggiare tra di essi più velocemente di quanto impiegherebbe la luce a percorrere la distanza attraverso lo spazio normale.
Go to a Wormhole
dierre è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2011, 09:44   #9
tuccio`
Senior Member
 
Iscritto dal: Apr 2010
Città: Frosinone
Messaggi: 416
Quote:
Originariamente inviato da Mulder90 Guarda i messaggi
siccome per numeri grandi potrebbe essere necessario molto tempo per vedere se un certo n è primo cerca di semplificarti la vita.
1) se il numero è pari non è primo. quindi if n%2==0 return false
2) il ciclo a questo punto può essere fatto solo sui numeri dispari.
3) con un po di matematica si riesce a dimostrare che non è necessario fare un ciclo che arrivi fino ad n. Infatti basta arrivare fino alla radice di n.

Cerca di fare qualcosa del genere!
be' volendo i numeri primi maggiori di 3, li puoi scrivere tutti nella forma 6k+/-1, quindi volendo non serve neanche guardarli tutti i dispari

Ultima modifica di tuccio` : 01-02-2011 alle 13:48.
tuccio` è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2011, 11:13   #10
rеpne scasb
Senior Member
 
Iscritto dal: May 2008
Messaggi: 533

Ultima modifica di rеpne scasb : 18-06-2012 alle 17:14.
rеpne scasb è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2011, 13:35   #11
clockover
Senior Member
 
L'Avatar di clockover
 
Iscritto dal: Oct 2004
Messaggi: 1945
Quote:
Originariamente inviato da rеpne scasb Guarda i messaggi
Se non hai problemi con i numeri molto grandi, e il numero da testare e' piccolo, allora puoi fare in questo modo:

sia 'n' il numero di cui vuoi testare la primalita', calcola la quantita' Q = ((n - 1)! + 1) / n, se intera allora 'n' e' primo altrimenti no.
Io direi di non confondergli troppo le idee.. secondo me meglio che cominci con qualcosa di magari poco efficiente ma semplice da scrivere. Poi ovviamente può renderlo migliore con il tempo.
clockover è offline   Rispondi citando il messaggio o parte di esso
Old 05-02-2011, 19:33   #12
hw85
Senior Member
 
Iscritto dal: Mar 2008
Messaggi: 4259
Ragazzi ho un problema "simile" se qualcuno mi può dare una mano ve ne sarei grato!

http://www.hwupgrade.it/forum/showthread.php?t=2317648

Grazie anticipate!!
__________________
concluso positivamente con:sidro007-EBJ-blindzoom-cala_l_asso-Elionba82-carson-piottocentino-Marco83_an-capzero-nino.nino-Pyefruitjuice-spakkone-Drago-relativo-pippo1955-MauritZ-stefano_na-Marci-SchumyFast-Andreww!!!-Neapolitan89-DEXTHA-kernelex-umegh-AndreaFra-zamboqdb-Xenon [TMI] || CERCO : Nulla per il momento || VENDO: Nulla per il momento
hw85 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo M...
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
Funzionalità top a un prezzo acce...
Lo strumento per gli aggiornamenti autom...
Imperdibile sconto sul roborock Saros Z7...
Google Pixel 10, altri 100€ di sconto su...
Chip sotto i 2 nanometri, l'Europa alza ...
La smart meno smart di tutte: #6 in azio...
Red Hat Enterprise Linux sbarca su AWS E...
Addio alle migliaia di cicli e anni di t...
Colpo di STMicroelectronics, un'intesa d...
La Ferrari elettrica si chiama Luce: ecc...
Proseguono le riparazioni in vista del l...
Cinema domestico low cost: proiettore Fu...
Sharp porta a ISE 2026 i nuovi display i...
Casa più sicura senza lavori: Arl...
Batterie esauste, l'Italia raccoglie sol...
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: 22:47.


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