-
Автор темы
- #1
Привет.
Ради практики решил написать какую-нибудь несложную программу на плюсах, вот, написал то, что видите в названии. Не видел, чтобы такое делали на плюсах.
Исходник:
.cpp
.h
Программа верно обрабатывает пробелы и заглавные/прописные буквы. Символы и цифры - нет, но это легко исправить.
Хотел спросить у вас как можно лучше реализовать какие-то моменты, да.
И ещё - можете посоветовать что можно написать, но не слишком сложное.
Irval, жду твоих золотых советов)
Ради практики решил написать какую-нибудь несложную программу на плюсах, вот, написал то, что видите в названии. Не видел, чтобы такое делали на плюсах.
Исходник:
.cpp
C++:
#include <iostream>
#include <string>
#include "sheet.h"
using namespace std;
int GetSymbolType(int symbol, int textSymbol, string text)
{
if (text[textSymbol] == ENG_SYMBOLS[symbol])
return 1;
if (text[textSymbol] == ' ')
return 2;
return 0;
}
int main()
{
setlocale(LC_ALL, "Russian");
string text{ };
cout << endl << "English Input: ";
getline(cin, text); // gets line with spaces
string result{ };
for (int count{ }, symbol{ }; count <= text.length(); ) { // while count != text's length
switch (GetSymbolType(symbol, count, text)) {
case 1: ++count,
result.push_back(RU_SYMBOLS[symbol]), // if we hit symbol - push ru alt to back of result array
symbol = 0; break;
case 2: ++count,
result.push_back(' '),
symbol = 0; break;
default: ++symbol; break; // if symbol wasn't hit'ted - try next
}
}
cout << "Output: " << result << endl;
result.clear(), text.clear(), count = 0, symbol = 0;
main();
}
C++:
#pragma once
using namespace std;
const string ENG_SYMBOLS{ "qwertyuiop[]asdfghjkl;'zxcvbnm,.QWERTYUIOP[]ASDFGHJKL;'ZXCVBNM,." }; // 32 + 1
const string RU_SYMBOLS{ "йцукенгшщзхъфывапролджэячсмитьбюЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ" }; // 32 + 1
Программа верно обрабатывает пробелы и заглавные/прописные буквы. Символы и цифры - нет, но это легко исправить.
Хотел спросить у вас как можно лучше реализовать какие-то моменты, да.
И ещё - можете посоветовать что можно написать, но не слишком сложное.
Irval, жду твоих золотых советов)
Последнее редактирование: