Torna indietro   Hardware Upgrade Forum > Software > Programmazione

NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT
NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT
Nelle ultime settimane abbiamo provato tre delle proposte top di gamma di NZXT nelle categorie case, dissipatori e ventole. Rispettivamente, parliamo dell'H9 Flow RGB+, Kraken Elite 420 e F140X. Si tratta, chiaramente, di prodotti di fascia alta che si rivolgono agli utenti DIY che desiderano il massimo per la propria build. Tuttavia, mentre i primi due dispositivi mantengono questa direzione, le ventole purtroppo hanno mostrato qualche tallone d'Achille di troppo
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN è il primo monitor gaming con pannello QD-OLED Gen 5 a layout RGB Stripe Pixel e 360 Hz su 34 pollici: lo abbiamo misurato con sonde colorimetriche e NVIDIA LDAT. Ecco tutti i dati
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Nothing Phone (4a) Pro cambia pelle: l'alluminio unibody sostituisce la trasparenza integrale, portando una solidità inedita. Sotto il cofano troviamo uno Snapdragon 7 Gen 4 che spinge forte, mentre il display è quasi da top dig amma. Con un teleobiettivo 3.5x e la Glyph Matrix evoluta, è la prova di maturità di Carl Pei. C'è qualche compromesso, ma a 499EUR la sostanza hardware e la sua unicità lo rendono un buon "flagship killer" in salsa 2026
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-12-2003, 13:20   #1
rastaivory
Senior Member
 
L'Avatar di rastaivory
 
Iscritto dal: Oct 2001
Messaggi: 1179
un aiuto per c++...

salve ragazzi...
ho cominciato da qualche mese a programmare in c++ per l'uni, ora sto facendo un programmino che possa gestire le funzioni di carico e scarico di un magazzino... (per ora solo carico ed aggiornamento)
il problema (vd allegato) è che non riesco a far funzionare il ciclo while per l'estrazione dei campi... qualcuno mi può dare una mano?

grazie a tutti per la disponibilità e la gentilezza...
Allegati
File Type: rar magazzino2.rar (2.6 KB, 25 visite)
rastaivory è offline   Rispondi citando il messaggio o parte di esso
Old 22-12-2003, 09:36   #2
rastaivory
Senior Member
 
L'Avatar di rastaivory
 
Iscritto dal: Oct 2001
Messaggi: 1179
PERFAVORE... dammi quattromila euro...
rastaivory è offline   Rispondi citando il messaggio o parte di esso
Old 23-12-2003, 11:14   #3
rastaivory
Senior Member
 
L'Avatar di rastaivory
 
Iscritto dal: Oct 2001
Messaggi: 1179
proprio nessuno?
rastaivory è offline   Rispondi citando il messaggio o parte di esso
Old 28-12-2003, 16:30   #4
rastaivory
Senior Member
 
L'Avatar di rastaivory
 
Iscritto dal: Oct 2001
Messaggi: 1179
aiuto...
rastaivory è offline   Rispondi citando il messaggio o parte di esso
Old 29-12-2003, 11:57   #5
maxithron
Senior Member
 
L'Avatar di maxithron
 
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
Quote:
Originariamente inviato da rastaivory
PERFAVORE... dammi quattromila euro...
???

perchè non posti la parte del codice che non ti funge? (oltre a spiegarci la storia dei 4000 euri!!)
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n;
Utilizzando atomi trivalenti drogheremo il silicio di tipo p;
Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo
maxithron è offline   Rispondi citando il messaggio o parte di esso
Old 01-01-2004, 13:18   #6
rastaivory
Senior Member
 
L'Avatar di rastaivory
 
Iscritto dal: Oct 2001
Messaggi: 1179
questo è tutto il codice...
per i quattromila euro, non vedi colorado cafè?(era un modo per uppare...)


#include <iostream.h>
#include <string.h>
#include <fstream.h>
#include <stdlib.h>
#include <stdio.h>

//struttura dati





struct Data {

};


typedef struct articolo {

char nomearticolo [41];
char kg [6];


}ARTICOLO;

//variabili gestione files

ifstream fin;
ofstream fout;
char nomefile[100];

/////////////////////////////////////////////////////////////////////////////////////

int aggiungispazi (char stringa[], int caratteri);
int cancellaspazi (char stringa[]);

void main () {
char buffer[47];
int i=0;//varaibile di verifica aggiornamento
ARTICOLO newdato;
ARTICOLO olddato;

cout<<"inserisci il nome articolo: ";
cin >>newdato.nomearticolo;
cout<<endl;

cout<<"inserisci i kg: ";
cin >>newdato.kg;
cout<<endl;

//apertura file
strcpy (nomefile,"dati.txt");
fin.open(nomefile);
fout.open(nomefile,ios::out);

if(fin.fail() || fout.fail()){
cout<<"errore";
}

//esecuzione

while (fin.getline(buffer,46)) {

//estrazione campi da articolo
strncpy (olddato.nomearticolo , buffer ,40);
olddato.nomearticolo[40]='\0';
strncpy (olddato.kg ,buffer +41,5);
olddato.kg[5]='\0';
//cancella spazi
cancellaspazi (olddato.nomearticolo);
cancellaspazi (olddato.kg);
//converti kg in int
double oldkg;
oldkg=atof(olddato.kg);
double newkg;
newkg=atof(newdato.kg);
double totkg;
if (strcmp(olddato.nomearticolo,newdato.nomearticolo) == 0) {
totkg=oldkg+newkg;
i=1;
sprintf ( olddato.kg , "%i", totkg );
cout<<"ciao2";
}//fine if

//aggiungi spazi

aggiungispazi (olddato.nomearticolo, 40);
aggiungispazi (olddato.kg, 5);


fout << olddato.nomearticolo << olddato.kg <<endl;

}//fine while


//chiusura file
fin.close();
fout.close();

if (i!=1) {
fout.open(nomefile,ios::app);
//aggiungi spazi

aggiungispazi (newdato.nomearticolo, 40);
aggiungispazi (newdato.kg, 5);

fout << newdato.nomearticolo << newdato.kg <<endl;
fout.close();
}//fine if di aggiunta


}//fine main


//********************************************************
/*
CANCELLA SPAZI
*/

int cancellaspazi (char stringa[]) {

int i;


for(i=strlen( stringa ); i > 0 ; i--){
if (stringa[i] == ' ')
stringa[i] = '\0';

}
return 0;
}

//********************************************************


/*
AGGIUNGI SPAZI
*/


int aggiungispazi (char stringa[], int caratteri) {
int i;

for (i=strlen(stringa); i<caratteri;i++) {
stringa [i]=' ';
stringa[caratteri] = '\0';


}
return 0;
}
rastaivory è offline   Rispondi citando il messaggio o parte di esso
Old 02-01-2004, 08:11   #7
pinzi
Member
 
L'Avatar di pinzi
 
Iscritto dal: Oct 2003
Città: Umbertide
Messaggi: 180
Non ho ben capito il funzionamento del tuo programma ad ogni modo il ciclo while non verrà mai eseguito perchè l'istruzione:

fin.open(nomefile);

cancella tutti i dati presenti nel file dati.txt . Se vuoi far si che i dati non vengano cancellati devi aggiungere il flag ios::app oppure aprire il file all' interno del ciclo while.
Inoltre ho nontato che dichiari delle variabili all' interno del ciclo e questo potrebbe crearti dei problemi (una variabile deve essere dichiarata una sola volta).
pinzi è offline   Rispondi citando il messaggio o parte di esso
Old 05-01-2004, 11:09   #8
rastaivory
Senior Member
 
L'Avatar di rastaivory
 
Iscritto dal: Oct 2001
Messaggi: 1179
l'ho modificato come dici ma non funziona...
rastaivory è offline   Rispondi citando il messaggio o parte di esso
Old 06-01-2004, 10:54   #9
pinzi
Member
 
L'Avatar di pinzi
 
Iscritto dal: Oct 2003
Città: Umbertide
Messaggi: 180
Il programma per come era perima non avrebbe mai funzionato e come ti ho detto non mi è ben chiaro cosa accade dentro il ciclo while. Potresti essere più dettagliato sul perchè non funziona il programma?
pinzi è offline   Rispondi citando il messaggio o parte di esso
Old 06-01-2004, 11:25   #10
rastaivory
Senior Member
 
L'Avatar di rastaivory
 
Iscritto dal: Oct 2001
Messaggi: 1179
dovrebbe essere un piccolo programma per la gestione carico\scaico di un magazzino....
per ora ho implementato solo il carico: in pratica il prg chiede all'utente quale è la merce che deve caricare (cin), controlla che non sia gia presente in magazzino (ciclo while), se è presente aggiorna la quantità (somma), se no crea un nuovo record (fout).
il problema è che non entra nel ciclo while...
rastaivory è offline   Rispondi citando il messaggio o parte di esso
Old 06-01-2004, 11:26   #11
rastaivory
Senior Member
 
L'Avatar di rastaivory
 
Iscritto dal: Oct 2001
Messaggi: 1179
dimenticavo...
grazie per l'aiuto
rastaivory è offline   Rispondi citando il messaggio o parte di esso
Old 08-01-2004, 15:24   #12
pinzi
Member
 
L'Avatar di pinzi
 
Iscritto dal: Oct 2003
Città: Umbertide
Messaggi: 180
Usando le modifiche che ti ho suggerito nella precedente risposta il programma entra nel ciclo while purchè esista un file non vuoto chiamato dati.txt( Per come è scritto il tuo programma sembrebbe che sia necessario avere gia questo file).
pinzi è offline   Rispondi citando il messaggio o parte di esso
Old 08-01-2004, 17:25   #13
rastaivory
Senior Member
 
L'Avatar di rastaivory
 
Iscritto dal: Oct 2001
Messaggi: 1179
scusa se sono un po' ottuso ma a me non funziona...
a te funziona?

non è che puoi postare il codice?
rastaivory è offline   Rispondi citando il messaggio o parte di esso
Old 09-01-2004, 16:40   #14
pinzi
Member
 
L'Avatar di pinzi
 
Iscritto dal: Oct 2003
Città: Umbertide
Messaggi: 180
Di seguito troverai il listato corretto però ricorda di creare il file dati.txt non vuoto è opportunamente formattato(nelle prime 40 colonne i nomi e nelle seguenti 5 i pesi):

#include <iostream.h>
#include <string.h>
#include <fstream.h>
#include <stdlib.h>
#include <stdio.h>

//struttura dati





struct Data {

};


typedef struct articolo {

char nomearticolo [41];
char kg [6];


}ARTICOLO;

//variabili gestione files

ifstream fin;
ofstream fout;
char nomefile[100];

/////////////////////////////////////////////////////////////////////////////////////

int aggiungispazi (char stringa[], int caratteri);
int cancellaspazi (char stringa[]);

int main () {
char buffer[47];
int i=0;//varaibile di verifica aggiornamento
ARTICOLO newdato;
ARTICOLO olddato;

cout<<"inserisci il nome articolo: ";
cin >>newdato.nomearticolo;
cout<<endl;

cout<<"inserisci i kg: ";
cin >>newdato.kg;
cout<<endl;

//apertura file
strcpy (nomefile,"dati.txt");
fin.open(nomefile);
fout.open(nomefile,ios::app);

if(fin.fail() || fout.fail()){
cout<<"errore";
}

//esecuzione
double oldkg;
double newkg;
double totkg;
while (fin.getline(buffer,46)) {
//estrazione campi da articolo
strncpy (olddato.nomearticolo , buffer ,40);
olddato.nomearticolo[40]='\0';
strncpy (olddato.kg ,buffer +41,5);
olddato.kg[5]='\0';
//cancella spazi
cancellaspazi (olddato.nomearticolo);
cancellaspazi (olddato.kg);
//converti kg in int

oldkg=atof(olddato.kg);
newkg=atof(newdato.kg);

if (strcmp(olddato.nomearticolo,newdato.nomearticolo) == 0) {
totkg=oldkg+newkg;
i=1;
sprintf ( olddato.kg , "%i", totkg );
cout<<"\n"<<"ciao2"<<"\n";
}//fine if

//aggiungi spazi

aggiungispazi (olddato.nomearticolo, 40);
aggiungispazi (olddato.kg, 5);
cout <<olddato.nomearticolo << olddato.kg <<endl;

}//fine while


//chiusura file
fin.close();
fout.close();

if (i!=1) {
fout.open(nomefile,ios::app);
//aggiungi spazi

aggiungispazi (newdato.nomearticolo, 41);
aggiungispazi (newdato.kg, 5);

fout <<newdato.nomearticolo << newdato.kg <<endl;
fout.close();
}//fine if di aggiunta


}//fine main


//********************************************************
/*
CANCELLA SPAZI
*/

int cancellaspazi (char stringa[]) {

int i;


for(i=strlen( stringa ); i > 0 ; i--){
if (stringa[i] == ' ')
stringa[i] = '\0';

}
return 0;
}

//********************************************************


/*
AGGIUNGI SPAZI
*/


int aggiungispazi (char stringa[], int caratteri) {
int i;

for (i=strlen(stringa); i<caratteri;i++) {
stringa [i]=' ';
stringa[caratteri] = '\0';


}
return 0;
}
pinzi è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abb...
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz ASUS ROG Swift OLED PG34WCDN recensione: il prim...
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico Recensione Nothing Phone (4a) Pro: finalmente in...
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Anthropic ha un'AI che trova falle in Wi...
I 10 migliori sconti Amazon del weekend:...
Con un coupon scendono ancora: le super ...
Minimo storico per Samsung Galaxy S26 Ul...
Si è conclusa la missione lunare ...
EK Waterblock si arrende agli aumenti, i...
Geekbench si aggiorna: tutti i test con ...
Per la prima volta un computer quantisti...
Telecamere Reolink 4K su Amazon: Wi-Fi 6...
Anthropic vuole farsi i chip da sola? Co...
Il fondatore di Framework: il personal c...
JBL Live Flex 3 a 129€ su Amazon: ANC ad...
Come un uomo ha costruito un'azienda da ...
Multe fino a 400 euro anche se hai pagat...
Tapo lancia una valanga di offerte su Am...
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:13.


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