М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Sergey200320032003
Sergey200320032003
18.07.2021 11:03 •  Информатика

Написать програмный код С++ ЗАДАЧА : Значения элементов двумерного динамического массива из n строк и m столбцов скопировать в одномерный динамический массив размером m*n. Копирование проводить по

строкам начиная с первой;

 Исходные данные ввести из текстового файла;

 Результат вывести на экран и в текстовый файл;

 Программа должна содержать комментарии;

👇
Ответ:
beka9867
beka9867
18.07.2021

#include <iostream>

#include <fstream> // Для работы с файлами

#include <cstdlib> // Для функции exit()

using namespace std;

int main()

{

// Открываем файл для чтения

ifstream input_file("input.txt");

if (!input_file.is_open()) {

// Если файл не удалось открыть, выводим сообщение об ошибке и завершаем программу

cerr << "Error: unable to open input file" << endl;

exit(1);

}

// Считываем количество строк и столбцов

int n, m;

input_file >> n >> m;

// Создаем двумерный динамический массив

int** array = new int*[n];

for (int i = 0; i < n; i++) {

array[i] = new int[m];

}

// Считываем значения элементов из файла

for (int i = 0; i < n; i++) {

for (int j = 0; j < m; j++) {

input_file >> array[i][j];

}

}

// Создаем одномерный динамический массив

int* new_array = new int[n * m];

// Копируем значения элементов из двумерного массива в одномерный

int k = 0;

for (int i = 0; i < n; i++) {

for (int j = 0; j < m; j++) {

new_array[k++] = array[i][j];

}

}

// Закрываем файл

input_file.close();

// Открываем файл для записи

ofstream output_file("output.txt");

if (!output_file.is_open()) {

// Если файл не удалось открыть, выводим сообщение об ошибке и завершаем программу

cerr << "Error: unable to open output file" << endl;

exit(1);

}

// Выводим значения элементов одномерного массива в файл

for (int i = 0; i < n * m; i++) {

output_file << new_array[i] << " ";

}

output_file << endl;

// Закрываем файл

output_file.close();

// Освобождаем выделенную память

for (int i = 0; i < n; i++) {

delete[] array[i];

}

delete[] array;

delete[] new_array;

return 0;

}

Не забудьте также проверить, что файлы input.txt и output.txt существуют и имеют нужные разрешения для чтения/записи.

4,8(23 оценок)
Открыть все ответы
Ответ:

Консольные программы — это наследие старых операционных систем типа MS DOS, работавших в текстовом режиме. Полной аналогии здесь нет, но создатели систем разработки пытаются сделать всё, чтобы было максимальное сходство. Для консольной программы операционная система или система разработки предоставляет специальное окно (обычно — черного цвета), в котором виден ход выполнения программы.

Оконное приложение всегда имеет своё собственное окно (обычно его называют главным окном приложения). Кроме главного окна в приложении могут использоваться множество других окон.

При разработке оконного приложения используются различные элементы управления: командные кнопки, окна ввода, надписи, меню и т.д.

4,7(28 оценок)
Ответ:
kamilya14957
kamilya14957
18.07.2021
Народ последнюю задачку проверьте опять не могу найти ошибку
УСЛОВИЕ:
Дано натуральное четырехзначное число. Найти наименьшую нечетную цифру в числовой записи данного числа.
Формат входных данных
Входной файл содержит натуральное четырехзначное число.
Формат выходных данных
Выведите наименьшую нечетную цифру в числовой записи данного числа. Если нечетных цифр в числе нет, выведите в выходной файл -1.

РЕШЕНИЕ:
PascalВыделить код1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 var n,a,b,c,d:integer; f,g:text; begin assign(f,'input.txt'); assign(g,'output.txt'); reset(f); rewrite(g); readln(f,n); a:=n div 1000; b:=n div 100 mod 10; c:=(n mod 100) div 10; d:=n mod 10; if (a mod 2=0) and (b mod 2=0) and (c mod 2=0) and (d mod 2=0) and (n<>0)  then writeln(g,'-1') else if (a<=b) and (a<=c) and (a<=d) then writeln(g,a) else if (b<=a) and (b<=c) and (b<=d)then  writeln(g,b) else if (c<=a) and (c<=b) and (c<=d) then writeln(g,c) else if (d<=a) and (d<=b) and (d<=c) then writeln(g,d) else close(f); close(g); end.
4,6(72 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ