Вопрос задан 30.11.2023 в 19:49. Предмет Информатика. Спрашивает Чернова Александра.

Написать программу, которая считывает английский текст из файла и выводит его на экран, заменив

каждую первую букву слов, начинающихся с гласной буквы, на происходящую.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Лапко Дима.

Ответ:

Объяснение:

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

/*

*Лабораторная работа: 7.

*Тема: Строки и файлы. Организация работы со строками и файлами.

*Пункт: 5.2. Файловый тип данных.

*Файл: Lab07_YaP_2019_1S.pdf

*

*Язык: C++.

*Среда: Microsoft Visual Studio 2019 v16.3.0.

*Платформа: x64.

*Изменение: 06.01.2020.

*

*Вариант: 13.

*Защита: 15.11.2019.

*Задание: БН. Написать программу, которая считывает Английский текст из файла и выводит его на экран, заменив каждую первую букву слов,

*     начинающихся с гласной буквы, на прописную.

*/

#include <iostream>                                                        // Треб. для SETLOCATE, PRINTF, GETLINE, STRLEN, CIN, COUT. //

#include <fstream>                                                         // Требуется для FSTREAM. //

#include "Header.h"

void main () {

    setlocale (LC_ALL, "Russian");

    char SourceArray [Dimension + 1] = " ";                               // SOURCEARRAY [100] = 101 (для "\0"). //

    char LettersArray [Dimension - 72] = " ";                             // [0]..[25] = 1..26 (для ввода с клавиатуры), [26] = 27

    char PathTextFile [Dimension + 1] = " ";                              // (для "\0"). //

    printf ("1. Латинский алфавит (26 букв): a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z.\n\n2. Введите"

         " путь и имя файла (до %d символов, включительно): ", Dimension);

    cin.getline (PathTextFile, Dimension);

    fstream TextFile (PathTextFile, ios::trunc | ios::in | ios::out);     // TRUNC - создание, IN - режим записи, OUT - режим чтения. //

    if (!TextFile) {

         MessageFunction ();                                              // Выводится на экран, если файл открыть не удалось. //

    }

    printf ("\n3. Введите строчные Латинские буквы, которые следует заменить на прописные (до %d символов, включительно):\n\n",

         Dimension - 73);

    cin.getline (LettersArray, Dimension - 72);

    if (strlen (LettersArray) < 1) {

         TextFile.close ();                                               // Закрытие файла. //

         MessageFunction ();

    }

    printf ("\n4. Введите строку (до %d символов, включительно):\n\n", Dimension);

    cin.getline (SourceArray, Dimension);

    if (strlen (SourceArray) < 1) {

         TextFile.close ();                                               // Закрытие файла. //

         MessageFunction ();

    }

    TextFile << SourceArray;                                              // Запись SOURCEARRAY в файл. //

    TextFile.close ();                                                    // Закрытие файла. //

    ChangeFunction (LettersArray, PathTextFile);

    printf ("\n5. Исходная строка после замены:\n\n");

    WriteArrayFunction (PathTextFile);

    remove (PathTextFile);                                                // Удаление файла. //

    cout << endl << endl;

    ExitProgramFunction ();

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи, мы можем использовать следующий алгоритм:

1. Открыть файл для чтения. 2. Прочитать текст из файла. 3. Разделить текст на слова. 4. Для каждого слова в тексте: - Проверить, начинается ли оно с гласной буквы (a, e, i, o, u). - Если да, заменить первую букву на происходящую и сохранить изменения. - Если нет, оставить слово без изменений. 5. Вывести измененный текст на экран. 6. Закрыть файл.

Вот пример реализации данного алгоритма на языке Python:

```python def replace_vowel(word): vowels = ['a', 'e', 'i', 'o', 'u'] if word[0].lower() in vowels: return word[0] + 'роисходящая' + word[1:] return word

def replace_vowels_in_text(file_name): try: with open(file_name, 'r') as file: text = file.read() words = text.split() modified_words = [replace_vowel(word) for word in words] modified_text = ' '.join(modified_words) print(modified_text) except FileNotFoundError: print("Файл не найден.")

replace_vowels_in_text('example.txt') ```

В этом примере функция `replace_vowel` принимает слово и проверяет, начинается ли оно с гласной буквы. Если да, она заменяет первую букву на происходящую, добавляет 'роисходящая' и возвращает измененное слово. Если слово не начинается с гласной буквы, оно остается без изменений.

Функция `replace_vowels_in_text` открывает файл с заданным именем, считывает текст, разделяет его на слова, заменяет первую букву каждого слова, начинающегося с гласной, и выводит измененный текст на экран.

Обратите внимание, что в примере используется файл 'example.txt'. Вы можете заменить это имя на имя вашего файла или предоставить свой собственный файл с английским текстом для чтения.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос