Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Milady_
0 / 0 / 1
Регистрация: 09.04.2011
Сообщений: 15
#1

произведение средних арифм. значений "диагоналей " в матрице - C++

09.04.2011, 21:44. Просмотров 467. Ответов 6
Метки нет (Все метки)

Доброго времени суток! Не могли бы вы мне подсказать реализацию на Си, есть задача: по заданной треугольной матрице А сформировать матрицу В, каждый элемент которой равен произведению средних арифметических значений элементов "диагоналей", проходящих в матрице А через элемент а.
Впринципе вся реализация понятна, кроме :" произведению средних арифметических значений элементов "диагоналей" ", как здесь совсем непонятно что даже хотят от меня. Буду очень рада если кто нибидь мне поможет
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2011, 21:44
Я подобрал для вас темы с готовыми решениями и ответами на вопрос произведение средних арифм. значений "диагоналей " в матрице (C++):

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года "весна", "лето", "осень", "зима" определить...

Создайте вектор, хранящий десять строковых значений "zero", "one", ..., "nine"
не могу понять как это можно сделать: "Создайте вектор, хранящий десять...

Найти номер последней по порядку строки в матрице, содержащей наибольшее количество букв "ш", "щ"
Нужен код к этому условию, пожалуйста. Дана символьная матрица размера 13х18....

Дано натуральное число. Найти сумму последних "n" цифр "n" числа, не применяя переменых значений
Здравствуйте, помогите написать две программы. 1) Дано натуральное число....

Для каждой строки найти слова, которые не имеют ни одного из букв: "l", "k", "r", "s" i "j"
Задано символьные строки. Строка состоит из нескольких слов (наборов символов),...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование)
Разработать программу с использованием наследования классов, реализующую...

6
IrineK
Заблокирован
10.04.2011, 04:34 #2
Представляется нечто эдакое:
0
Изображения
 
Milady_
0 / 0 / 1
Регистрация: 09.04.2011
Сообщений: 15
10.04.2011, 17:58  [ТС] #3
да, да именно это, вот как это реализовать, ведь так нужно посчитать для каждого элемента, только элементы, стоящие ниже главной диагонали необязательно равны 0
0
IrineK
Заблокирован
10.04.2011, 18:01 #4
только элементы, стоящие ниже главной диагонали необязательно равны 0
У вас же в условии:
по заданной треугольной матрице А
А верхнетреугольная матрица именно так и выглядит.
0
Milady_
0 / 0 / 1
Регистрация: 09.04.2011
Сообщений: 15
10.04.2011, 23:10  [ТС] #5
сорри:-) опечатка вышла... прямоугольной)))
0
MrGluck
Модератор
Эксперт CЭксперт С++
8023 / 4866 / 1425
Регистрация: 29.11.2010
Сообщений: 13,251
10.04.2011, 23:51 #6
Что то навроде этого, но переделать надо на вычисление с учетом позиции эллемента a.
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
#include <iostream>
#include <clocale>
#include <conio.h>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"Russian");
    int m, n;
    cout<<"Введите m: ";
    cin>>m;
    cout<<"Введите n: ";
    cin>>n;
    int A[m][n];
    cout<<"Введите матрицу построчно:\n";
    float sum1=0.0, number1=0.0, sum2=0.0, number2=0.0;
    for (int i=0; i<m; i++) 
        for (int j=0; j<n; j++)
        {
            cin>>A[i][j];
            if (i==j ) // первая диагональ
            {
                     sum1+= A[i][j];
                     number1++;
            }
            if (i==(n-j)) // вторая диагональ
            {
                     sum2+= A[i][j];
                     number2++;
            }
        }
    float sr1 = sum1/number1; // ср. арифмитическое первой диагонали
    float sr2 = sum2/number2; // ср. арифмитическое второй диагонали
    float sr= sr1 * sr2; // их произведение
    float B[m][n];
    for (int ii=0; ii<m; ii++)
    {
        for (int jj=0; jj<n; jj++)
        {
            B[ii][jj]=sr;
            cout<<B[ii][jj]<<" ";
        }
        cout<<endl;
    }
    getch();
    return 0;  
}
1
Milady_
0 / 0 / 1
Регистрация: 09.04.2011
Сообщений: 15
11.04.2011, 23:23  [ТС] #7
спасибо, попробую:-)
0
11.04.2011, 23:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.04.2011, 23:23
Привет! Вот еще темы с решениями:

Создать абстрактный класс "Издание" и производные классы "Книга", "Статья", "Электронный ресурс"
1. Создать абстрактный класс Издание с методами, позволяющими вывести на экран...

Создать класс "Вентилятор" содержащий в себе классы: "Двигатель", "Контроллер", "Пульт управления"
Помогите с кодом написания задачи, не понимаю как написать классы в классе. ...

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания"
Создать класс Книга поля: название книги,количество страниц,год издания...

Определить тип данных "Запись", имеющий поля "Фамилия", "Пол", "Зарплата"
определить тип данных запись имеющий поля фамилия пол зарплата. определить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru