Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Makc95-01
0 / 0 / 0
Регистрация: 04.12.2012
Сообщений: 4
#1

Строки: заменить в словах цифры малыми буквами латинского алфавита - C++

10.06.2014, 21:37. Просмотров 687. Ответов 1
Метки нет (Все метки)

Напишите, пожалуйста, программу!
Из текстового файла, состоящего из 6-7 строк сформировать массив слов. Заменить в словах цифры малыми буквами латинского алфавита, так чтобы каждой цифре соответствовала определенная буква, например 0 - a, 1 - b. 2 - c, ... , 9 - j. Результат записать в файл. Вывести исходный и полученный файлы.

Добавлено через 8 часов 26 минут
Есть решение этой задачи в Delphi, но надо её в С++ написать. Тема актуальна
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2014, 21:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Строки: заменить в словах цифры малыми буквами латинского алфавита (C++):

Удалить из строки все символы не являющиеся буквами латинского алфавита - C++
Ввести символьную строку. Удалить из строки все символы не являющиеся буквами латинского алфавита. Новых строк не создавать. Строку до и...

Удалить из данной строки все символы, не являющиеся буквами латинского алфавита или цифрами, и заменив каждую - C++
как написать код к данной задачке? Известно, что в исходной строке содержатся буквы латинского алфавита, цифры, знаки препинания и...

Ввести строки и за один просмотр в функции определять частоту встречаемости в строке цифры и буквы латинского алфавита - C++
Ввести строки и за один просмотр в функции определять частоту встречаемости в строке цифры и буквы латинского алфавита. Стандартных...

Определить число элементов в массиве, являющихся гласными буквами латинского алфавита - C++
Задан символьный массив размера N. Определить число элементов в массиве являющихся гласными буквами латинского алфавита.

Удалить из файла все записи, расположенные между заглавными буквами латинского алфавита и сами заглавные буквы - C++
Дан символьный файл. Удалить из него все записи, расположенные между заглавными буквами латинского алфавита и сами заглавные буквы....

Найти слова, в которых есть цифры и буквы латинского алфавита - C++
Задание такое:Дана строка. Словом текста является последовательность цифр и букв латинского алфавита; между соседними словами - не менее...

1
FraidZZ
Ex-Member
3899 / 1525 / 229
Регистрация: 06.01.2013
Сообщений: 4,050
Завершенные тесты: 1
10.06.2014, 23:18 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include <iostream>
#include <string>
#include <vector>
#include <cstdio>
#include <fstream>
 
#define B_SIZE 8192
 
using namespace std;
 
void replace_num(string &fobj){
  for (int i = 0; i < fobj.length(); i++) {
   if ((int) fobj[i] <= (int) '9' && (int) fobj[i] >= (int) '0'){
    fobj[i] = (char) ((int) fobj[i] - (int) '0' + (int) 'a');
   }
   if (fobj[i] == '\n') fobj.erase(i, 1);
  }
}
 
void file_print(ifstream& finput){
  char buffer[B_SIZE + 1];
  while (finput && !(finput.rdstate() & ios::eofbit)){
    finput.read(buffer, B_SIZE);
    buffer[finput.gcount()] = '\0';
    printf("%s", buffer);
  }
  return;
}
 
int main(int argc, char *argv[]){
  if (argc < 3) {cout<<"Неверный синтаксис"; return 1;}
  ifstream finput ( argv[1] );
  if (!finput) {cout<<"Ошибка открытия входного файла"; return 1;}
  ofstream foutput ( argv[2], ios::trunc | ios::out);
  if (!foutput) {cout<<"Ошибка открытия выходного файла"; return 1;}
 
  vector<string> stracc;
  string tmp;
  
  while (!(finput.rdstate() & ios::eofbit)){
    finput >> tmp;
    stracc.push_back(tmp);
  }
  for (vector<string>::iterator iter = stracc.begin(); iter != stracc.end(); iter++){
    replace_num(*iter);
    foutput<<*iter<<endl;
  }
 
  printf("Исходный файл (%s):\n", argv[1]);
  finput.close(); finput.open(argv[1]); 
  file_print(finput);
 
  printf("\n\nВыходной файл (%s):\n", argv[2]);
  finput.close(); finput.open(argv[2]);
  file_print(finput);
  finput.close();
 
  return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2014, 23:18
Привет! Вот еще темы с ответами:

Для заданной строки построить строку, в которой содержаться только буквы латинского алфавита исходной строки - C++
Помогите пожалуйста,я уже не знаю что делать,не получается и все

Строковые типы данных (заменить все прописные (большие) буквы латинского алфавита строчными (маленькими)) - C++
Ввести с клавиатуры строку и заменить все прописные (большие) буквы латинского алфавита строчными (маленькими). Язык С++ (дано Edit1 и...

строки, имеется строка, содержащая буквы латинского алфавита.......... - C++
Имеется строка, содержащая буквы латинского алфавита и цифры. Вывести на экран длину наибольшей последовательности цифр, идущих подряд.

Расшифровка строки (циклическим сдвигом букв латинского алфавита на n символов) - C++
Дано зашифрованный строку символов, состоящий из букв латинского алфавита. Создать функцию, которая возвращает расшифрован строку символов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.