Статистика
Всего в нашей базе более 4 327 663 вопросов и 6 445 976 ответов!

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

10-11 класс

двумерной матрицы, находящиеся над побочной диагонали; упорядочить их по возрастанию и найти их среднее арифметическое.

Kolya12345 18 сент. 2014 г., 16:31:45 (9 лет назад)
Рейтинг
+ 0 -
0 Жалоба
+ 0 -
оля897
18 сент. 2014 г., 19:22:01 (9 лет назад)

//На VS 2010 решается так, в других средах разработки может нужно к заголовкам добавить .h или убрать подключение пространства имен STD :(Console application)

 

#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
using namespace std;

void Print(int m, int ** matr)  // Функция печати матрицы на экран
{
for(int i = 0; i< m; i++)
{
for(int j = 0; j<m; j++)
{
cout.width(4);
cout<<matr[i][j];
}
cout<<endl;
}
}

void search_and_print(int X, int **M) //Функция поиска элементов с их сортировкой и выводом на экран
{
int razmer = ((X*X) - X)/2;
int *mas = new int [razmer];
int Y = X - 1;
float srednee = 0;
int index = 0;
for (int j = 0; j<Y;j++)
{
for(int i = 0; i<(X-1);i++ )
{
mas[index] = M[i][j];
index++;
}
Y--;
}
for(int i = 0; i<(razmer-1); i++) //Сортировка методом выбора. X-1 раз ищем наименьший элемент.
{
//Принимаем за наименьший первый элемент из расматриваемых:
int min = i;
//Поиск минимального элемента из неупорядоченных:
for(int j = i+1;j<razmer;j++)
{
//Если нашли меньший элемент, запминаем его номер:
if(mas[j]<mas[min]) min = j;
}
//Обмен элементов:
int a = mas[i];
mas[i] = mas[min];
mas[min] = a;
}
cout<<"\nUporyado4enniy massiv:\n";
//Вывод и суммирование элементов отсортированного массива для среднего
for(int i = 0;i<razmer;i++)
{
cout<<mas[i]<<ends;
srednee += mas[i];
}
//Поиск арифметичесгоко реднего}
srednee = srednee/razmer;
cout<<"\nSrednee: "<<srednee;
delete [] mas;
}
void main()
{

srand ((unsigned)time(NULL));
int X;
cout<<"Vveditrazmer matritsi po gorizontaly i po vertikaly:\n";
cin>>X;
int** Matr;
Matr = new int* [X];   //Безопасный способ
for(int i = 0; i<X; i++)  //задания динамического

Matr[i] = new int[X]; // двумерного массива.
for(int j =0; j<X; j++)  //Заполняем матрицу
{    Matr[i][j] = rand()%10-5;} //Числами от -5 до 5
}
cout<<"Ishodnaya matritsa:\n";
Print(X,Matr);
search_and_print(X,Matr);
_getch();
delete [] Matr;
}

Ответить

Читайте также

Дана целочисленная прямоугольная матрица А размерности n*m. Переменной В присвоить значение, равное количеству строк

матрицы, содержащих хотя бы один нулевой элемент. (Помогите написать программы на с ++)

написать программу на Assembler

добрый вечер, всем. помогите, пожалуйста, написать программу на Ассемблере.

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

Объединить два массива 8-битных целых чисел со знаком. Сначала элементы второго затем первого.

заранее огромное спасибо всем!

Паскаль помогите пжл!!!!!! Дан одномерный массив, состоящий из вещественных элементов. Найти произведение элементов массива,

расположенных между максимальным и минимальным элементами.

Дан одномерный массив, состоящий из вещественных элементов. Найти произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами

ну или исправьте мое пжл

program fgf;
var mas:array[1..100] of real;
max,min:real;
i,n,c,b:shortint;
p:real;
f1,g:text;
begin;
assign (f1, 'input.txt');
reset (f1);
readln (f1, n);

for i:=1 to N do read (mas[i]);
max:=mas[i];
for i:=2 to N do begin
if mas[i]>max then begin
max:=mas[i];
c:=i;
end;
end;
min:=mas[1];
for i:=2 to N do begin
if mas[i]<min then begin
max:=mas[i];
b:=i;
end;
end;
close(f1);
assign (g, 'output.txt');
rewrite (g);
p:=1;
if b<c then I:=b+1 and c-1

else for I:=c+1 to b-1 do p:=p*mas[i];

if (n<3) or (b+1=c) or (c+1=b) then writeln(g,'0.00') else write(p:3:3) ;

close (g);
end.

Написать программу на паскале: Дана матрица А, имеющая N строк и N столбцов.

Сформируйте два одномерных массива. В один перешлите четные, а в другой
-нечетные элементы матрицы. Выведите на экран все массивы.



Вы находитесь на странице вопроса "Написать программу на С++. Дана целочисленная квадратная матрица произвольной размерности. Сформировать одномерный массив, в который поместить элементы", категории "информатика". Данный вопрос относится к разделу "10-11" классов. Здесь вы сможете получить ответ, а также обсудить вопрос с посетителями сайта. Автоматический умный поиск поможет найти похожие вопросы в категории "информатика". Если ваш вопрос отличается или ответы не подходят, вы можете задать новый вопрос, воспользовавшись кнопкой в верхней части сайта.