-3
大文字の文字をNATOの表音アルファベットに変換する必要があります。 2つの配列を使用する。 A =アルファ、B:C++配列のNatoアルファベット
letters.txtは
words.txtはNATOフォネティックコードとテキストファイルのAlpha-ズールー
(例であるAZ文字でテキストファイルです= Bravo ...)
問題は、文字が変換されるたびにズールーが印刷されることです。
正しく変換できるようにこのプログラムを追加または変更する必要があるのは何ですか?ここで
は、あなたがあなたの文字や単語を保持するために、適切なコンテナを必要とするコード
#include <iostream>
#include <string>
#include <fstream>
#include <iomanip>
using namespace std;
int main()
{
ifstream inputFile;
inputFile.open("words.txt");
string word;
while (inputFile >> word)
{
}
inputFile.open("letters.txt");
char letter;
while (inputFile >> letter)
{
}
char choice;
char letter2;
char Alpha[26]={letter};
string Words[26]={word};
do
{
cout<<"\nPlease enter a letter"<<endl;
cout<<"Letter: ";
cin>>letter2;
for(int count=0; count < 26; count++)
{
cout<< Words[count];
}
cout<<"\nDo you want to run this program again? <y/n>"<<endl;
cin>>choice;
}
while(choice=='y' || choice=='Y');
return 0;
}
'しばらく(で、inputFile >>単語を)続ける{}'単に以前 'word'各反復に置き換えられます。あなたは1つの単語、最後に読んだものだけを保存します。 'string' [26] = {word};'は26文字列の配列を定義し、最初の単語は 'word'に格納されたもので残りは空の文字列です。 'Words'と' Letters'を直接読んでください。 –
一度に1ステップずつ小さくする必要があります。まず一つのファイルをメモリに読み込みます。 [小さなプログラムをデバッグする方法](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)も参照してください。 –