Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-12-2008, 15:03   #1
RikyToro
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 21
[C/C++] aiuto per programmini

chiedo un aiuto su alcuni programmini che avevo da fare..in fase di compilazione non viene segnalato nessun errore..ma poi non fanno quello che vorrei..questi sono i testi e i codici che ho scritto..se riuscite a capire dove ho sbagliato mi fate un piacere..grazie


1) (a) realizzare una funzione di nome diff che, presi tre array di interi A, B, C e le dimensioni n ed m di A e B calcola C=A/B(differenza insiemistica tra A e B: C contiene tutti e soli gli elementi che appartengono ad A e non a B).la funzione restituisce come suo risultato il numero di elementi contenuti in C.
(b)realizzare un programma principale che legge due sequenze di numeri interi (di lunghezza max 100),terminate da un numero negativo, le memorizza in due array e quindi tramite la funzione diff calcola la differenza insiemistica tra i due insiemi di elementi e la stampa su std output.

Questo è il mio codice:

Codice:
 #include <iostream>
using namespace std;
int const dim=100;
int diff(int A[],int n,int B[],int m,int C[])
    {int x=0;//dimensione di C
    for(int i=0;i<n;i++)
     for(int j=0;j<m;j++)
       if(A[i]!=B[j])x++;
    return x;
    }
int main()
    {int A[dim];
    int B[dim];
    int x;
    int C[x];
    cout<<"inserisci la prima sequenza terminata da numero negativo(max 100 numeri)"<<endl;
    for(int i=0;i<dim & A[i]>=0;i++)
     cin>>A[i];
    cout<<"inserisci la seconda sequenza terminata da numero negativo(max 100 numeri)"<<endl;
    for(int j=0;j<dim & B[j]>=0;j++)
     cin>>B[j];
    x=diff(A,dim,B,dim,C);
    cout<<x;
    return 0;
    }
2) (a) Sia S il tipo di una struttura dati struct costituita da un campo c1 di tipo stringa (dim max 1000) ed un campo c2 di tipo intero contenente la lunghezza della stringa in c1. Scrivere una funzione void di nome aggiorna che, presi come suoi parametri una struttura A di tipo S ed una stringa s, modifica la struttura A concatenando la stringa s alla stringa contenuta nel campo c1 di A ed aggiorna il campo c2 di A sommandovi la lunghezza della stringa s.
(b)realizzare un programma principale di prova che legge da std input due stringhe di lunghezza max 80, terminate da “a capo”,memorizza la prima stringa insieme alla sua lunghezza in una struttura di tipo S e quindi richiama la funzione aggiorna passandole la struttura creata e la seconda stringa letta. Il programma termina stampando su std output i valori dei campi c1 e c2 della struttura passata alla aggiorna.
N.B utilizzare solo stringhe tipo C(=array di caratteri)

Questo è il mio codice:
Codice:
#include <iostream>
#include <cstring>
using namespace std;
int const dim=1000;
int const dim_max=80;
struct S{char c1[dim];
         int c2;//lunghezza della stringa
         };
void aggiorna(S A,char s[])
     {int x;//lunghezza di s
     strcpy(A.c1,strcat(A.c1,s));
     A.c2=A.c2+x;
     return;
     }
int main()
    {S A;
    char s[dim_max];
    int x;
    cout<<"inserisci la prima stringa(max 80 caratteri)"<<endl;
    cin.getline(A.c1,dim_max);
    A.c2=strlen(A.c1);
    cout<<"inserisci la seconda stringa(max 80 caratteri)"<<endl;
    cin.getline(s,dim_max);
    x=strlen(s);
    aggiorna(A,s);
    cout<<A.c1<<endl;
    cout<<A.c2<<endl;
    return 0;
    }

Ultima modifica di RikyToro : 28-12-2008 alle 15:48.
RikyToro è offline   Rispondi citando il messaggio o parte di esso
Old 28-12-2008, 15:21   #2
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
il 3d verrà chiuso o modificato per la mancanza del linguaggio fra parentesi
quadre

http://www.hwupgrade.it/forum/showthread.php?t=1649196
inoltre potresti inserire il codice fra i tag CODE rendendo migliore la vita a coloro che provano a leggere il codice?
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 28-12-2008, 15:48   #3
RikyToro
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 21
scusate....sistemato...
RikyToro è offline   Rispondi citando il messaggio o parte di esso
Old 28-12-2008, 16:12   #4
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
a me il primo non compila per un semplice motivo x non è costante e il compilatore (borland,giustamente) si incazza, inoltre non capisco a cosa ti serve l'array c, inoltre gli elementi dell'array è il caso tu li inizializzi a zero.
ora guardo anche il secondo esempio
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 28-12-2008, 16:22   #5
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
per il secondo invece devi ricordarti di una cosa, le strutture sono passate per valore e quindi quella che passi alla funzione non verrà modificato, quindi passalo per riferimento
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 28-12-2008, 16:53   #6
RikyToro
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 21
grazie per l'aiuto..

però in che senso x non è costante?

e poi nel 2°es ora riesce a concatenare le stringhe però viene fuori un numero strano e non la lunghezza della stringa finale,non capisco il perchè..
RikyToro è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
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...
L'Etiopia vieta le auto a combustione: a...
Pirateria audiovisiva: la Guardia di Fin...
Ubisoft conferma due nuovi Far Cry in sv...
Chi vincerà il Festival di Sanrem...
G42 e Cerebras portano in India un super...
Offerte aggiornate del weekend Amazon: 7...
4 MacBook Air in offerta e scende a 939€...
Chrome cambia il tuo modo di lavorare: o...
Minimo storico iPhone 17 su Amazon: 909€...
USA, incriminati tre ingegneri della Sil...
Xbox: Phil Spencer lascia dopo 38 anni, ...
Cuffie e sostanze chimiche: uno studio e...
Terremoto sui dazi USA: la Corte Suprema...
Arianespace potrebbe lanciare il primo r...
Google Pixel 10a disponibile al prezzo m...
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: 15:57.


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