Форум программистов, компьютерный форум CyberForum.ru

Двумерный массив. (написать ф-цию для уменьш. на 5 значений тех элем. матрицы, котор. кратны 3 и нах-ся в пределах от 0 до 50) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ как создать такой алгоритм? (подсчитать произведение каждого столбца матрицы и вывести на экран) http://www.cyberforum.ru/cpp-beginners/thread731687.html
Смысл вот в чем,нужно подсчитать произведение каждого столбца матрицы и вывести на экран А условие такое,чтобы элемент который находится в а столбца был меньше чем b,который мы вводим произвольно.Ломал голову 2дня так и не смог ничего придумать,как составить этот алгоритм
C++ Определить колличество маскимальных элементов в массиве Помогите пожалуйста решить задачу: дан двумерный массив. Определить колличество маскимальных элементов в массиве. Очень надеюсь на вашу помощь Добавлено через 1 час 57 минут help) http://www.cyberforum.ru/cpp-beginners/thread731685.html
Пользователь вводит с клавиатуры 5 чисел. Программа выводит на экран их среднее арифметическое C++
Надо использовать циклы. Написпал прогу,в чём может быть ошибка? #include <iostream> using namespace std; int main() { int a, b, c, d, e, f, s;
Алгоритм "Решето Эратосфена" C++
Вот наконец-то получилось реализовать это алгоритм. Укажите, пожалуйста, как можно написать красивее и рациональней? vector<int> all;//Здесь храняться все числа от 0 до n int n= 0; //верхний предел int p = 2; //первое простое число cin>>n; for(int i = 0; i<=n; ++i){//Заполнение вектора all all.push_back(i); }
C++ Задача с двусвязным списком http://www.cyberforum.ru/cpp-beginners/thread731663.html
Помогите сделать задание. Вставить второй список вместо i-ного элемента первого.
C++ Убрать лишние пробелы в строке из файла Строка считывается из текстового файла (тип fstream), имя которого запрашивается у пользователя. Строка состоит из нескольких слов, которые отделяются друг от друга пробелами (одним или несколькими). Требуется подсчитать число слов в строке и изменить ее так, чтобы слова разделялись одним пробелом. Имеется код, где число слов подсчитывается нормально. А вот со второй частью задания возникли... подробнее

Показать сообщение отдельно
KHRONOS
0 / 0 / 0
Регистрация: 14.12.2012
Сообщений: 5
14.12.2012, 18:30     Двумерный массив. (написать ф-цию для уменьш. на 5 значений тех элем. матрицы, котор. кратны 3 и нах-ся в пределах от 0 до 50)
Сформировать матрицу целых чисел. Количество строк и столбцов ввести с клавиатуры. Написать функцию для уменьшения на 5 значений тех элементов матрицы, которые кратны 3 и находятся в пределах от 0 до 50.

Не могу сделать последние задание.Точнее не знаю как уменьшить каждый елемент который кратный 3 на 5((
Буду благодарен за помощь.

Вот мои нароботки:

Source File:
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
#include <iostream>
#include "vvid.h"
#include "vivid.h"
#include "det.h"
 
using namespace std;
 
void vvid(int, int, int**);
void vivid(int, int, int**);
int sum(int, int, int**);
int main()
 
{
    int n, m, i;
    cout << "How many string's?:";
    cin>> n;
    cout << "How many column's?:";
    cin>> m;
    int **a; a = new int *[n];
    for(i=0; i<n; i++)
    a[i] = new int[m];
    vvid(n, m ,a);
    cout << "It's your array:" << endl;
    vivid(n, m, a);
    cout << "It's your array after transformation" << endl;
    det(n, m, a);
    vivid(n, m, a);
    cin.get();
    cin.get();
    return 0;
}
Header File "vvid.h"
C++
1
2
3
4
5
6
7
8
9
10
void vvid(int n, int m, int **a)
{
    int i, j;
    for(i=0; i<n; i++)
        for(j=0; j<m; j++)
        {
            std::cout << "Please input element number["<<i+1<<"] [" << j+1 << "]:";
            std::cin>> a[i][j];
        }
}
Header File "vivid.h"
C++
1
2
3
4
5
6
7
8
9
10
void vivid(int n, int m, int **a)
{
    int i, j;
    for(i=0; i<n; i++)
    {
        for(j=0; j<m; j++)
            std::cout << a[i][j] << " ";
        std::cout << std::endl;
    }
}
Header File "det.h"

C++
1
2
3
4
5
6
7
8
9
10
void det(int n, int m, int **a)
{
    int i, j;
    for(i=0; i<n; i++)
        for(j=0; j<m; j++)
        {
            if(i%3 == 0 && a[i][j]>0 && a[i][j]<=50)
            a[i][j]-=5;
        }
}
Добавлено через 41 минуту
Почему-то меняет несколько елементов на -5
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru