Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    113

    [c++] Acquisizione caratteri fino BOMBA

    Acquisizione caratteri fino a che non vengono inserite tutte le lettere della parola BOMBA (non necessariamente in sequenza):

    #include <iostream.h>

    main()
    {
    char x[100], par[6], PARM[6];
    int k, i;

    i=0;
    k=0;

    par = "bomba";
    PARM = "BOMBA";

    while (i!=5)
    {
    cout << "\nInserisci un carattere: ";
    cin >> x[k];

    if (x[k]==par[i] || x[k]==PARM[i])
    i++;

    k++;
    }

    cout << x << endl;
    cin >> i;
    }

    Dev-c++ non lo fa girare, ma non capisco quali sono i miei errori... il cout << x è corretto? o è meglio cout << x[k]??

    VI prego aiutatemi

  2. #2
    Il problema era nell'assegnazione delle stringhe bomba e BOMBA. se dichiari le due variabili come puntatori a char funziona tutto.
    Inoltre alla fine dopo aver letto carattere per carattere una stringa devi inseirre il carattere \0 per indicare la fine di essa.

    codice:
    #include <iostream.h>
    
    main()
    {
    char x[100], *par, *PARM;
    int k, i;
    
    i=0;
    k=0;
    
    par = "bomba";
    PARM = "BOMBA";
    
    while (i!=5)
    {
    cout << "\nInserisci un carattere: ";
    cin >> x[k];
    
    if ((x[k]==par[i]) || (x[k]==PARM[i]))
    i++;
    
    k++;
    }
    x[k]='\0';
    
    cout << x << endl;
    cin >> i;
    return 0;
    }
    ciao ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    113
    Si hai ragione ho sbagliato l'inizializzaione delle stringhe, infatti così mi funge:

    #include <iostream.h>

    main()
    {
    char x[100], par[6] = "bomba", PARM[6] = "BOMBA";
    int k, i;

    i=1;
    k=1;

    while (i!=5)
    {
    cout << "\nInserisci un carattere: ";
    cin >> x[k];

    if (x[k]==par[i] || x[k]==PARM[i])
    i++;

    k++;
    }
    x[k] = '\0';

    cout << x << endl;
    cin >> i;
    }

    Grazie mille di tutto!!!
    Bye bye

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.