Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Google ha appena rinnovato la sua celebre serie A con il Pixel 10a, lo smartphone della serie più conveniente se consideriamo il rapporto tra costo e prestazioni. Con il chip Tensor G4, un design raffinato soprattutto sul retro e l'integrazione profonda di Gemini, il colosso di Mountain View promette un'esperienza premium a un prezzo accessibile. E il retro non ha nessuno scalino
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026
Al MWC Qualcomm annuncia una coalizione industriale per lanciare il 6G entro il 2029 e introduce agenti IA per la gestione autonoma della RAN. Ericsson, presente sul palco, conferma la direzione: le reti del futuro saranno IA-native fin dalla progettazione
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso
CHUWI CoreBook Air è un ultraleggero da 1 kg con Ryzen 5 6600H, display 14" 16:10 e 16 GB LPDDR5. Offre buona portabilità, autonomia discreta e costruzione in alluminio, ma storage PCIe 3.0 e RAM saldata limitano l'espandibilità. A 549 euro sfida brand più noti nella stessa fascia di mercato.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-02-2010, 12:13   #1
pixie
Member
 
Iscritto dal: Apr 2006
Messaggi: 264
[C++] Confrontare intero array...

Salve... si lo so sto aprendo troppe discussioni ma devo rispolverare il mio c++... ho fatto 1 mese a non programmare e mi si è resettato il cervello...vabbè...chiacchere a parte...
Ho un array di struct 'lista' e devo confrontare ogni suo singolo campo con un altro stuct 's'.
Entrambi hanno gli stessi campi cioè: nome, cognome e email.
Il mio problema è:
=> come faccio a confrontare l'intero array di struct 'lista' con i campi dello struct 's'??
Mi servirebbe una cosa di questo tipo anche se non si può:
Codice:
 if (for (n=0; n < x; n++) {
               strcmp (lista[n].nome, s.nome) != 0 &&
               strcmp (lista[n].cognome, s.cognome)!= 0 }
              )
Si lo so non ha senso ma è per fare capire cosa cerco di fare.
pixie è offline   Rispondi citando il messaggio o parte di esso
Old 08-02-2010, 12:38   #2
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da pixie Guarda i messaggi
Salve... si lo so sto aprendo troppe discussioni ma devo rispolverare il mio c++... ho fatto 1 mese a non programmare e mi si è resettato il cervello...vabbè...chiacchere a parte...
Ho un array di struct 'lista' e devo confrontare ogni suo singolo campo con un altro stuct 's'.
Entrambi hanno gli stessi campi cioè: nome, cognome e email.
Il mio problema è:
=> come faccio a confrontare l'intero array di struct 'lista' con i campi dello struct 's'??
Mi servirebbe una cosa di questo tipo anche se non si può:
Codice:
 if (for (n=0; n < x; n++) {
               strcmp (lista[n].nome, s.nome) != 0 &&
               strcmp (lista[n].cognome, s.cognome)!= 0 }
              )
Si lo so non ha senso ma è per fare capire cosa cerco di fare.
Non è che si capisce molto bene. Vuoi verificare se tutti gli elementi di lista sono uguali a s? Vuoi trovare tutti gli elementi di lista differenti da s? Vuoi trovare il primo elemento di lista diverso da s? Vuoi cercare se s è presente all'interno di lista?

Volevi qualcosa di simile?
Codice:
int n = 0;
bool equal = true;
do
{
    if (strcmp (lista[n].nome, s.nome) != 0 &&
        strcmp (lista[n].cognome, s.cognome)!= 0)
        equal = false;
}while(++n<x);//se ti interessa trovare il primo diverso basta aggiungere && equal==true
Poi però non so cosa ci devi fare se c'è un elemento in lista che è diverso da s.

Suppongo che tu non stia usando niente di C++ e tutto C. Vedo che usi array e strcmp al posto di vector e string.
Altrimenti potresti definire l'operatore == per l'oggetto nome,cognome,email e usare equal o find a seconda di quello che devi fare.
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 08-02-2010, 12:42   #3
pixie
Member
 
Iscritto dal: Apr 2006
Messaggi: 264
sto utilizzando c++ questo ne sono sicuro... questo è l'esercizio così si capisce meglio:
" Realizzare una funzione booleana di nome aggiungi che, presi come suoi parametri un array lista di strutture di tipo Ind, il numero n di elementi in lista, ed una struttura s di tipo Ind, aggiunge s a lista, in posizione n, se non trova nessun elemento in lista con lo stesso valore dei campi nome e cognome di s "
pixie è offline   Rispondi citando il messaggio o parte di esso
Old 08-02-2010, 13:00   #4
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da pixie Guarda i messaggi
sto utilizzando c++ questo ne sono sicuro...
Direi che stai usando C e basta.
Ovvero non stai usando niente del "++".

Quote:
questo è l'esercizio così si capisce meglio:
" Realizzare una funzione booleana di nome aggiungi che, presi come suoi parametri un array lista di strutture di tipo Ind, il numero n di elementi in lista, ed una struttura s di tipo Ind, aggiunge s a lista, in posizione n, se non trova nessun elemento in lista con lo stesso valore dei campi nome e cognome di s "
Si ma te hai capito cosa chiede l'esercizio?
In parole tue sapresti esprimere cosa devi cercare di fare?
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 08-02-2010, 15:03   #5
pixie
Member
 
Iscritto dal: Apr 2006
Messaggi: 264

Ho una funzione "aggiungi" con quei 3 parametri.
Questa funzione aggiunge lo struct 's' dentro l'array di struct 'lista' in una posizione n, solo se 's' non trova nessun campo nome e cognome uguale a un elmento qualsiasi dell'array 'lista'.
ho capito cosa devo fare ma non riesco ad esprimerlo con il linguaggio.
pixie è offline   Rispondi citando il messaggio o parte di esso
Old 08-02-2010, 17:12   #6
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da pixie Guarda i messaggi

Ho una funzione "aggiungi" con quei 3 parametri.
Questa funzione aggiunge lo struct 's' dentro l'array di struct 'lista' in una posizione n, solo se 's' non trova nessun campo nome e cognome uguale a un elmento qualsiasi dell'array 'lista'.
ho capito cosa devo fare ma non riesco ad esprimerlo con il linguaggio.
Non è che questo forum sia un posto dove chiedere le soluzioni agli esercizi da 0:
E' vietato chiedere la risoluzione completa di progetti relativi a corsi di studio.
Posta il codice che riesci a scrivere e poi riceverai eventualmente aiuto su cosa non va nel tuo codice.
Il problema è estremamente semplice: ricerca di un elemento in una lista.
tomminno è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026 6G, da rete che trasporta dati a rete intelligen...
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso CHUWI CoreBook Air alla prova: design premium, b...
Roborock Saros 20: il robot preciso e molto sottile Roborock Saros 20: il robot preciso e molto sott...
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm ASUS ROG Kithara: quando HIFIMAN incontra il gam...
Switch 2: la crisi dei chip potrebbe ess...
Samsung si prepara a raddoppiare i prezz...
Il Play Store inizia ad avvisare gli ute...
AliExpress punta sulle aziende italiane:...
Oura acquisice una nuova startup: potreb...
Gli occhiali smart con IA sono il nuovo ...
Il nuovo Apple M5 Max si comporta bene n...
Shark annuncia il lancio di CryoGlow: la...
TCL perde in tribunale: quei TV 'QLED' n...
NVIDIA: la scarsità di hardware c...
Nintendo fa causa al governo USA per i d...
iPhone 17 256GB a 899€, MacBook Air 16/2...
C'è l'IA dietro la tua canzone pr...
Rocket Lab ha posticipato il lancio del ...
Dalla missione Artemis IV il razzo spazi...
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: 06:53.


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