Torna indietro   Hardware Upgrade Forum > Software > Programmazione

In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
Abbiamo assemblato e provato la Fiido Nomads Pro, evoluzione del modello da trekking già presente nella gamma, che migliora in tutto, soprattutto grazie al motore centrale, fluido e potente. Ottima app, costruzione solida e prezzo ok completano il quadro
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto
Lo chassis in Ceraluminium è il cuore di questo notebook in edizione 2026, un modello pensato per garantire produttività con le tipiche applicazioni di produttività personale e capace di offrire un'autonomia di funzionamento lontano dalla presa di corrente da riferimento. Potenza, facilità di trasporto e costruzione robusta tutto in un notebook compatto.
MSI PRO MAX: QD-OLED ultrawide per lavorare, creare e giocare
MSI PRO MAX: QD-OLED ultrawide per lavorare, creare e giocare
MSI PRO MAX 341QPXW14G è un monitor ultrawide da 34 pollici che porta la tecnologia QD-OLED di quinta generazione in un contesto principalmente orientato alla produttività. La qualità dell'immagine è elevatissima, il formato 21:9 è ideale per il multitasking e la dotazione di porte trasforma il monitor in un vero hub per Mac, PC e dispositivi mobili. Il limite principale è invece il refresh rate di soli 144 Hz, che lo allontana dai giocatori competitivi più esigenti
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-11-2009, 09:06   #1
M4rk90
Member
 
L'Avatar di M4rk90
 
Iscritto dal: Aug 2007
Messaggi: 265
[C++] Prime armi, Programma che verifichi se un numero è primo. Help!

Salve a tutti.. come da titolo sono alle prime armi con questo linguaggio...
Vorrei riuscire a creare un programma che verifichi se un numero è primo o no...

ecco il mio codice...che vi dico già da ora che è sbagliato:
Codice:
#include <stdio.h>
#include <stdlib.h>

main()

{
int x, num, prim;
printf("\tNumeri primi.");
printf("\n\nSe vuoi verificare che un numero e' primo digita 1, \naltrimenti digita 2 se vuoi avere stampati \ni primi n numeri primi: ");
scanf("%d", &x);
while ((x!=1)&&(x!=2))
      {
      printf("Il comando da te inserito e' errato, digita nuovamente il comando: ");
      scanf("%d", &x);
      }
if (x==1)
   {
   printf("Inserisci il numero da verificare: ");
   scanf("%d", &num);
         if (num%2==0)
            {printf("Il numero non e' primo.");}
         else 
                 for (int i=2; i<num;)
                 {
                 prim=num%i;
                            if (prim!=0)
                               {
                               printf("Il numero da te inserito e' primo.");
                               break;
                               }
                            else
                               i++;
                 }      
   }
printf("\n");
system("pause");
return 0;      
}
__________________
Il mio Flickr
M4rk90 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2009, 09:54   #2
Allure
Senior Member
 
L'Avatar di Allure
 
Iscritto dal: Nov 2002
Città: Roma
Messaggi: 1242
Che problemi ti da di preciso? Intanto non dovrebbe esserci un valore di ritorno int per il main?
__________________
Concertina: "I know the truth is in between the 1st and 40th drink"
Allure è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2009, 09:58   #3
M4rk90
Member
 
L'Avatar di M4rk90
 
Iscritto dal: Aug 2007
Messaggi: 265
scusa ma non ho capito..

comunque il problema è che non incrementa i a 3 e quindi non controlla..diciamo che mi dice che tutti i numeri dispari sono primi...
__________________
Il mio Flickr
M4rk90 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2009, 10:15   #4
Allure
Senior Member
 
L'Avatar di Allure
 
Iscritto dal: Nov 2002
Città: Roma
Messaggi: 1242
Quote:
Originariamente inviato da M4rk90 Guarda i messaggi
scusa ma non ho capito..

comunque il problema è che non incrementa i a 3 e quindi non controlla..diciamo che mi dice che tutti i numeri dispari sono primi...
butto benzina sul fuoco... mi dice anche che 2 non è un numero primo
__________________
Concertina: "I know the truth is in between the 1st and 40th drink"
Allure è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2009, 10:30   #5
M4rk90
Member
 
L'Avatar di M4rk90
 
Iscritto dal: Aug 2007
Messaggi: 265
sisi...li devo porre che se inserisco 2 mi dice automaticamente che è primo... quello lo risolvo con un semplice if+printf
__________________
Il mio Flickr
M4rk90 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2009, 11:20   #6
M4rk90
Member
 
L'Avatar di M4rk90
 
Iscritto dal: Aug 2007
Messaggi: 265
nessuno sa aiutarmi??
__________________
Il mio Flickr
M4rk90 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2009, 11:51   #7
fero86
Senior Member
 
Iscritto dal: Oct 2006
Città: Roma
Messaggi: 1383
includi <math.h> e cambia il for in questa maniera:
Codice:
for (int i = 2; i <= (int)sqrt(num); i++)
{
    if (num % i == 0)
    {
        printf("Il numero da te inserito NON e' primo.");
        break;
    }
}
fero86 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2009, 11:56   #8
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2794
Comunque stai programmando praticamente in C (nel senso che non stai usando nessuna peculiarità del C++)
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2009, 12:14   #9
M4rk90
Member
 
L'Avatar di M4rk90
 
Iscritto dal: Aug 2007
Messaggi: 265
si lo sò... il compilatore è il dev c++
__________________
Il mio Flickr
M4rk90 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2009, 15:47   #10
lupixslacky
Junior Member
 
L'Avatar di lupixslacky
 
Iscritto dal: Jun 2005
Messaggi: 26
Sono d'accordo stai programmando in C...
Un esempio:
printf e' di c
cout<< e' c++
Ma ci sono molte altre cose...
Poi se vuoi continua cosi' ma non parlare di c++ postando codice alla maniera di c.Senza offesa,il mio e' un consiglio.
lupixslacky è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2009, 12:39   #11
wizard_at
Senior Member
 
L'Avatar di wizard_at
 
Iscritto dal: Jul 2006
Città: MILANO
Messaggi: 1645
Quote:
Originariamente inviato da fero86 Guarda i messaggi
includi <math.h> e cambia il for in questa maniera:
Codice:
for (int i = 2; i <= (int)sqrt(num); i++)
{
    if (num % i == 0)
    {
        printf("Il numero da te inserito NON e' primo.");
        break;
    }
}
quindi per vedere se e' primo ti basta fare :

Codice:
int i;
for (i = 2; i <=sqrt(num); i++)
{
    if (num % i == 0)
    {
        break;
    }
}
if ( ! ( i <=sqrt(num) ) ) printf ( "primo!" ) ;
__________________
xoooxoooxooox
wizard_at è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi In sella alla Fiido Nomads Pro: e-bike con motor...
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto ASUS Zenbook 14 (UX3480AA): tanta autonomia con ...
MSI PRO MAX: QD-OLED ultrawide per lavorare, creare e giocare MSI PRO MAX: QD-OLED ultrawide per lavorare, cre...
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre iPhone 18 Pro: la recensione del miglior iPhone ...
Addio conversioni: Google Drive e Docs o...
Arriva il portale di Google che smascher...
Gli iPhone 18 Pro non convincono: Apple ...
NVIDIA torna su macOS con un driver non ...
Engwe ha un modello che è il SUV ...
Le migliori offerte del weekend Amazon: ...
Cina e UE, intesa sulle auto ibride: Pec...
2 lavatrici slim COMFEE’ a 255€ o 280€ s...
Anche a ottobre tornano i coupon nascost...
Robot ECOVACS DEEBOT MINI a 198,98€ su A...
E-bike in offerta: una in stile Engwe a ...
Auricolari Motorola Moto Buds a 24,90€: ...
Tim Berners-Lee a Torino: 'Voglio un'IA ...
Ring ancora a prezzi super su Amazon: ci...
Batterie EV riconfigurabili: fino al 20%...
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: 17:26.


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