Data una stringa vi sono 3 opzioni da scegliere.

di il
6 risposte

Data una stringa vi sono 3 opzioni da scegliere.

Testo:
/*Programma che acquisita una stringa ti fa scegliere cosa fare tra 1) leggere la stringa 2 ) vederla in maiuscolo 3) sapere quanto e' grande */

Come mai mi da l'errore, nel punto :
typedef char stringa [N];
cout << " Inserire stringa " << endl;
cin >> stringa ;


/*Programma che acquisita una stringa ti fa scegliere cosa fare tra 1) leggere la stringa 2 ) vederla in maiuscolo 3) sapere quanto e' grande  per ora!! ) */
#include <iostream>
#define N 100
#include <cstring>
#include <cstdlib>
using namespace std;
int main()
{
	typedef char stringa [N];
	cout << " Inserire stringa " << endl;
	cin >> stringa ;
	
	float risposta;
	
	cout << "\n Cosa vuoi fare ora : \n 1) Rispondere 1 se vuoi leggere la stringa. \n 2) Rispondere 2 se vuoi vedere la stringa in maiuscolo. \n 3) Rispondere 3 se vuoi sapere quanto e' grande la stringa. ";
	cin >> risposta;
	
	if (risposta == 1)
	{
		cout << " Hai deciso di leggere la stringa ";
		cout << " Eccola:  " << stringa ;
	}
	
	if (risposta == 2)
	{
		cout << " Hai deciso di leggere la stringa in maiuscolo ";
		int i;
		char STRINGA [N];
		
		for (i=0; stringa [i] != '\0'; i++)
		{
			if (stringa[i]>= 'a' && stringa[i]<= 'z')
			{
				STRINGA [i] = stringa [i] - 32;
			}
		}
		
		cout << " La stringa in maiuscolo risulta " << STRINGA ;
	}
	
	if (risposta == 3)
	{
		cout <<" Hai deciso di sapere la lunghezza della stringa ";
		
		lung = 0;
		while (stringa[lung] != '\0' )
		{
			lung++;
		}
		cout << " La lunghezza della stringa e' " << lung << endl;
	}
	
	if (risposta != 1 && risposta != 2 && risposta != 3)
	{
		cout << " Non hai voluto sapere nulla ";
	}
}

6 Risposte

  • Re: Data una stringa vi sono 3 opzioni da scegliere.

    Usando in quel modo la typedef stringa diventa un "tipo di dato" ma la variabile non esiste finché non scrivi, ad esempio

    stringa s;

    E da quel momento puoi utilizzare s

    Non ho capito se stai programmando in C o C++ perché c'è un miscuglio tra i due linguaggi che genera confusione ...
  • Re: Data una stringa vi sono 3 opzioni da scegliere.

    oregon ha scritto:


    Usando in quel modo la typedef stringa diventa un "tipo di dato" ma la variabile non esiste finché non scrivi, ad esempio

    stringa s;

    E da quel momento puoi utilizzare s

    Non ho capito se stai programmando in C o C++ perché c'è un miscuglio tra i due linguaggi che genera confusione ...
    Sto programmando in C++, il C non l'ho mai usato...
  • Re: Data una stringa vi sono 3 opzioni da scegliere.

    Ho risolto! dichiarando la variabile s di tipo stringa! grazie..
  • Re: Data una stringa vi sono 3 opzioni da scegliere.

    Beh, in C++ si usano gli oggetti

    string

    di

    <string>

    e non le

    <cstring>
  • Re: Data una stringa vi sono 3 opzioni da scegliere.

    oregon ha scritto:


    Beh, in C++ si usano gli oggetti

    string

    di

    <string>

    e non le

    <cstring>
    Sinceramente ho inserito quelle librerie, perché il libro diceva di usarle per fare determinate cose che alla fine non ho usato.. il libro parla di C++.
    Comunque se dello stesso programma vorrei leggere la stringa al contrario?
  • Re: Data una stringa vi sono 3 opzioni da scegliere.

    Sinceramente ho inserito quelle librerie
    Non sono librerie ma file include ... Il concetto di libreria è diverso.
    il libro parla di C++.
    Questo libro non mi pare il massimo per imparare il C++ ...
    Comunque se dello stesso programma volessi leggere la stringa al contrario?
    Per un altro problema, una nuova discussione ...
Devi accedere o registrarti per scrivere nel forum
6 risposte