Задания 1. Опишите термин «Одномерный массив». ………………………………………………………………………………………………………. ….…………………………………………………………………………………………………… i. Приведите пример одномерного массива. ………………………………………………………………………………………………………. ….…………………………………………………………………………………………………… 2. Прочитайте условия задач и напишите программный код. i. Дана строка, состоящая из слов, разделенных пробелами. Определите, сколько в ней слов. ii. Дана строка, в которой буква K встречается несколько раз. Определите общее количество буквы K в строке. 3. Решите задачу используя двумерный массив. Выведите два числа: номер строки и номер столбца, в которых стоит максимальный элемент. 4. Дан двумерный массив и два числа: i и j. Поменяйте в массиве столбцы с номерами i и j и выведите результат. Программа получает на вход размеры массива n и m, затем элементы массива, затем числа i и j. В решении используйте функцию swap_columns().
Ответы
Відповідь: у меня работает
Одномерный массив - это структура данных, представляющая собой последовательность частей одного типа, расположенных в одном ряду либо столбце.
( тут пример )
int numbers[5] = {1, 2, 3, 4, 5};
1.Количество слов в строке:
#include <iostream>
#include <sstream>
int countWords(const std::string& str) {
std::istringstream iss(str);
int count = 0;
std::string word;
while (iss >> word) {
count++;
}
return count;
}
int main() {
std::string inputString = "Это строчка с количеством слов.";
int wordCount = countWords(inputString);
std::cout << "Количество слов в строке: " << wordCount << std::endl;
return 0;
}
2.Количество буквы K в строке:
#include <iostream>
int countLetterK(const std::string& str, char letter) {
int count = 0;
for (char ch : str) {
if (ch == letter) {
count++;
}
}
return count;
}
int main() {
std::string inputString = "Количество К в этой строчке";
char letterToCount = 'K';
int kCount = countLetterK(inputString, letterToCount);
std::cout << "Кол-во букв " << letterToCount << " у рядку: " << kCount << std::endl;
return 0;
}
3.Нахождение максимального элемента в двумерном массиве:
#include <iostream>
const int rows = 3;
const int cols = 4;
void findMaxElement(int arr[rows][cols]) {
int maxElement = arr[0][0];
int maxRow = 0;
int maxCol = 0;
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
if (arr[i][j] > maxElement) {
maxElement = arr[i][j];
maxRow = i;
maxCol = j;
}
}
}
std::cout << "Максимальный элемент: " << maxElement << std::endl;
std::cout << "Номер строки: " << maxRow << std::endl;
std::cout << "Номер столбика" << maxCol << std::endl;
}
int main() {
int matrix[rows][cols] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{