Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
WF-1000X M6 è la sesta generazione di auricolare in-ear sviluppata da Sony, un prodotto che punta a coniugare facilità di utilizzo con una elevata qualità di riproduzione dei contenuti audio e una cura nella riduzione del rumore ambientale che sia da riferimento
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI
Snowflake ha presentato diverse novità per la sua piattaforma legate all'intelligenza artificiale. Quella forse più eclatante è una collaborazione con OpenAI, ma non mancano diverse nuove funzionalità che rendono la piattaforma più flessibile e in grado di rispondere meglio alle esigenze in continuo cambiamento delle aziende
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
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-12-2003, 14: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, 10: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, 12: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, 17: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, 12: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, 14: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, 09: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, 12: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, 11: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, 12: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, 12: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, 16: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, 18: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, 17: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


Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
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
Samsung vuole riconquistare la leadershi...
L'app di YouTube per Apple Vision Pro &e...
Fastweb + Vodafone: clienti e ricavi in ...
Artemis II: nuovo test prima del Wet Dre...
GTA 6 gratis se nasce un figlio il giorn...
Quasi la metà degli smartphone at...
DDR5 a 16 dollari al gigabyte: Framework...
Meno di 3kg per 'diventare' bionici: l'u...
Al regalo di San Valentino ci pensa HUAW...
Intel multata in India: 30 milioni di do...
Beast of Reincarnation ha una data di us...
Provati Reno15 e Reno15 FS: analisi comp...
L'Europa sfida la Cina sul litio: in Fin...
Sono 32, di cui 6 nuove, le offerte Amaz...
Rinnovo dei coupon Amazon nascosti: ecco...
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:44.


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