Vai al contenuto

Programmino in C++


Gabri91

Messaggi raccomandati

Salve gente ho fatto un piccolo programmino in c++ come esercizio scolastico pre-compito in classe (domani:mad:) il codice sembra essere apposto ma non funziona.

Il problema da risolvere è abbastanza semplice:

Chiedere se uno studente abita in provincia, in caso affermatico se abita a meno di 20km e usa l'autobus ha un rimborso sull'abbonamento del 15% se usa il treno alle stesse condizioni il rimborso è del 10%, dire se si ha diritto al rimborso e in caso affermativo stampare a schermo il rimborso.

ecco il listato

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


int main()
{
   float ds,pb;
   char mt[6],p;
   cout<<"Abiti in provincia? (S/N):";
   cin>>p;    
   if (p=='s')
   {
       cout<<"Si ha diritto al rimborso!\n";
       cout<<"Inserire prezzo abbonamento: ";
       cin>>pb;
       cout<<"Inserire il tipo di mezzo di trasporto (Bus per AutoBus e Treno per Treno): \n";
       gets(mt);
       cout<<"Inserire distanza dalla scuola in KM: ";
       cin>>ds;
       if (ds<=20 && strcmpi(mt,"bus")==0)
           pb=(pb/100)*15;
       if (ds<=20 && strcmpi(mt,"treno")==0)
           pb=(pb/100)*10;
       cout<<"Rimborso pari a euro: " << pb <<"\n";
   }
   else
       cout<<"NON si ha diritto al rimborso!!\n";

return 0;

}

ho provato a compilarlo su XP,vista,Linux e mac os x ma nada da errore, su Xcode non riconosce la strcmpi e non funziona la gets(); (quello anche su linux, xp e vista)

se ci riuscite aiutatemi :confused:

:ciao:Gabri

MacBook C2D 2.16GHz 1GB Ram 120GB HD | iPod Nano 3G Nero 8GB | Nokia N78

Link al commento
Condividi su altri siti

ho provato ad usare strcmp ma il gets(); continua a non funzionare da questo errore

warning: this program uses gets(), which is unsafe.

MacBook C2D 2.16GHz 1GB Ram 120GB HD | iPod Nano 3G Nero 8GB | Nokia N78

Link al commento
Condividi su altri siti

ho trovato questo:

https://buildsecurityin.us-cert.gov/daisy/bsi-rules/home/g1/756.html

usa fgets invece di gets

comunque mi pare manchi un pezzo nel programma

Visita il mio sito con tutorial e software per Mac

Vuoi usare iChat? registrati QUI o QUI

ΛΛ MSN!

Link al commento
Condividi su altri siti

ho provato ad usare strcmp ma il gets(); continua a non funzionare da questo errore

warning: this program uses gets(), which is unsafe.

Ma questo non è un errore, è semplicemente un "avvertimento": gets non è sicura (il perchè, non penso ti possa interessare).

Il programma, quindi, dovrebbe essere compilato con successo ed essere eseguibile.

Be more sheperd

Born to lose - Live to win.

Link al commento
Condividi su altri siti

ok grazie effettivamente in classe ho ricontrollato il programma ed abbiamo trovato un modo per farlo funzionare (nel borland) appena ritrovo il sorgente nel pen-drive provo a compilarlo

MacBook C2D 2.16GHz 1GB Ram 120GB HD | iPod Nano 3G Nero 8GB | Nokia N78

Link al commento
Condividi su altri siti

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

×
×
  • Crea Nuovo...