c++ - Cari kejadian berturut-turut perkataan daripada input dan kiraan
给我你的怀抱
给我你的怀抱 2017-05-16 13:23:50
0
2
729

Soalannya ialah membaca beberapa objek rentetan daripada input standard dan mencari perkataan berulang berturut-turut Sebagai contoh, jika input ialah:
bagaimana sekarang sekarang lembu syurga
, ia sepatutnya mengeluarkan 3 (kini muncul 3 kali berturut-turut)

.
#include "iostream"
#include "string"

using namespace std;

int main() {
    int result = 0;
    int temp = 0;

    string word = "";
    string tempWord = "";

    cout << "Enter a bunch of words: " << endl;
    while (cin >> tempWord) {
        if (word == "") {
            word = tempWord;
            ++temp;
        }
        else {
            if (tempWord == word) {
                ++temp;
            }
            else {
                if (temp > result) {
                    result = temp;
                    temp = 0;
                }
            }
        }
    }
    cout << result << endl;

    return 0;
}

Namun, masalahnya sekarang ialah output sentiasa 0. Saya sendiri mendapati pepijat itu tetapi saya rasa tidak ada yang salah dengan logik Tolong beri saya nasihat, terima kasih~

给我你的怀抱
给我你的怀抱

membalas semua(2)
为情所困
if (temp > result)
{
    result = temp;
    temp = 0;
    
    //!
    word = "";
}

wordJuga biarkan kosong.

为情所困

cth: Masukkan hanya satu perkataan atau banyak perkataan

Berfikir secara menyeluruh

#include<iostream>
#include<string>
using namespace std;
int main() {
    int result = 0;
    int temp = 0;

    string word = "";
    string tempWord = "";

    cout << "Enter a bunch of words: " << endl;
    while (cin >> tempWord) {
        if (word == "") {
            word = tempWord;
            ++temp;
            if (temp > result) {
                result = temp;
        }

        }
        else {
            if (tempWord == word) {
                ++temp;
                if (temp > result) {
                       result = temp;
            }
            }
            else {    
        word = tempWord;
        temp = 1;
            }
        }
    }
    cout << result << endl;

return 0;
}
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan