Ciao a tutti sono nuovo ed anche un po a corto di soluzoni, bentrovati spero mi possiate aiutare.
Ho questo codice che in compilazione mi da errore:
main.cpp: In function ‘void scegliargomento(char*, char*, char*, int*, int&)’:
main.cpp:37:35: error: invalid conversion from ‘char’ to ‘const char*’ [-fpermissive]
37 | if (strcmp(argomento[i],arg)==0){
non riesco a capirne il motivo… questo il codice… GRAZIEEEEEEEEEEEEEE
using namespace std;
#include <string.h>
void caricaDati(char libri[], char autore[], char argomento[], int prezzo[], int &N)
{
while(N <= 0){
cout <<"inserisci numero elementi"<< N << endl;
}
for(int i=0; i<N; i++){
std::cout <<"inserisci libro: "<< libri[i]<<std::endl;
std::cout <<"inserisci autore: "<< autore[i]<<std::endl;
std::cout <<"inserisci argomento: "<< argomento[i]<<std::endl;
std::cout <<"inserisci prezzo: " << prezzo[i]<<std::endl;
}
}
void scegliargomento (char libri[], char autore[], char argomento[], int prezzo[], int &N){
char arg[]= "";
int prezzomin=0;
int prezzomax=0;
int cont=0;
//while(strcmp(arg,' ')==0){
// cout <<"scegli argomento"<<arg<< endl;
// cin(arg);
//}
for(int i=0; i<N; i++){
if (strcmp(argomento[i],arg)==0){
if (cont==0) {
prezzomax=prezzo[i];
prezzomin=prezzo[i];
cont++;
}
if (prezzo[i] > prezzomax) prezzomax=prezzo[i];
if (prezzo[i] < prezzomin) prezzomin=prezzo[i];
}
}
cout <<"il prezzo piu' basso e': "<< prezzomin << endl;
cout <<"il prezzo piu' alto e': "<< prezzomax << endl;
}
int main()
{
int N=0;
char libri[N];
char autore[N];
char argomento[N];
int prezzo[N];
//libro con prezzo minore e massimo dato un argomento in input
caricaDati (libri,autore,argomento,prezzo, N);
scegliargomento(libri,autore,argomento,prezzo, N);
return 0;
}