Объяснение:
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 ();
}
// Внимание! Если программа не работает, обновите версию!
begin
var n:=8;
var a:=new real[n,n];
var k:=1;
for var i:=0 to n-1 do
for var j:=0 to n-1 do begin
if i.IsEven then a[i,n-1-j]:=k
else a[i,j]:=k;
k+=1
end;
a.Println(3,0)
end.
Результат
8 7 6 5 4 3 2 1
9 10 11 12 13 14 15 16
24 23 22 21 20 19 18 17
25 26 27 28 29 30 31 32
40 39 38 37 36 35 34 33
41 42 43 44 45 46 47 48
56 55 54 53 52 51 50 49
57 58 59 60 61 62 63 64