0 / 0 / 0
Регистрация: 04.06.2014
Сообщений: 33

Переписать элементы, расположенные на вспомогательной диагонали и под ней в одномерный массив по столбцам

04.06.2014, 23:53. Показов 3771. Ответов 30
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
есть два задания, честно говоря очень сложно представить как их сделать .
помогите люди добрые!
1. Переписать элементы, расположенные на вспомогательной диагонали и под ней в одномерный массив по столбцам.
2. Записать на место отрицательных элементов нули, а на место положительных - единицы
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.06.2014, 23:53
Ответы с готовыми решениями:

В одномерный массив переписать отрицательные элементы элементов, расположенные ниже главной диагонали
Дан массив X(N,M). 1. В одномерный массив переписать отрицательные элементы элементов, расположенные ниже главной диагонали. 2....

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

Элементы расположенные над побочной диагональю переписать в одномерный массив
Помогите, элементы расположенные на побочной диагональю переписать в одномерный массив. Scanner in = new Scanner(System.in); ...

30
98 / 94 / 16
Регистрация: 16.05.2010
Сообщений: 310
10.06.2014, 00:20
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Danikor Посмотреть сообщение
но не выводит полученную матрицу.
Цитата Сообщение от Danikor Посмотреть сообщение
и под ней в одномерный массив по столбцам.
Какая матрица, коли это всё записывается в одномерный массив?

Раз уж спешите - то выкладите по пунктам, что не так и чего не хватает, а то тяжело воспринимать.
И выложите конечный ваш код - ибо "заменил некоторые цифры" - звучит обнадеживающе
0
0 / 0 / 0
Регистрация: 04.06.2014
Сообщений: 33
10.06.2014, 00:45  [ТС]
ок. вот на 2 программу код.
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
#include <iostream>
#include <math.h>
#include <conio.h>
 /* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
int main()
{
    setlocale(LC_ALL, "");
 
    
    int matrix[5][5],  n;
    cout << "Введите размер матрицы (не более 5): ";
    cin >> n;
    cout << "Введите значения матрицы: " << std::endl;
    for (int i = 0; i < 3; i++)
        for (int j = 0; j < 3; j++)
            cin >> matrix[i][j];
            cout << endl;
    int k = 0;
    for (int i = 0; i < 3; i++)
    {  
        for (int j = 0; j < 3; j++)
        {
            if(j >= 3-i-1)
            {
                massive[k] = matrix[j][i];
                cout << massive[k++] << " ";
            }
        }
    }
    cout << endl;
    for (int i = 0; i < k; i++)
    {   
        if (massive[i] < 0)
            massive[i] = 0;
        else
            massive[i] = 1;
        cout << massive[i] << " ";
    }
    _getch();
    return 0;   
}
вот я прекрасно понимаю что за чем нужно делать но вот как написать не знаю, хотя все команды которые должны быть в этой программе знаю и понимаю.
вот хочу изменить эту программу на заполнение матрицы вручную а не рандомно. и некоторые функции чтото типа printf , setw(), хотелось бы не использовать т.к. с этими командами не очень хорошо знаком. если это возможно то измените этот код программы на более легкий. заранее благодарен.
0
98 / 94 / 16
Регистрация: 16.05.2010
Сообщений: 310
10.06.2014, 01:12
Danikor, очень не рекомендую использовать данный код.... У Kerry_Jr вроде всё нормально описано.

И что такое на вторую программу? О_О Это не задача для одной программы? их несколько, или мы не знаем какого-то условия

На счет заполнения = ни в одном примере не увидел рандомного заполнения...
Цитата Сообщение от Danikor Посмотреть сообщение
типа printf , setw(), хотелось бы не использовать
хм, посмотрите в гугле что это такое, к примеру:
Допустим работаем с матрицей и иногда числа состоят из разного количества цифр, в результате при желании вывести матрицу красиво в «столбик» происходит сдвиг.
Для решения этой проблемы существует функция setw(), которая указывает количество пространства для следующей записи что мы выведем на экран.
setw(2) указывает на то, что для m[i][j] выделяется минимум два символа, независимо от того будет иметь матрица одну или две цифры.
0
0 / 0 / 0
Регистрация: 04.06.2014
Сообщений: 33
10.06.2014, 02:43  [ТС]
ты не понял.
в теме я записал 2 задания. то есть 2 разные программы. 1-вое задание я сделал. вот теперь обращаюсь со вторым заданием - вместо отрицательных чисел матрицы заменить на нули , положительные = 1. и я не уточнил.
нужно вывести на экран первоначальную матрицу . потом какие числа были изменены ну и уже окончательную матрицу с измененными элементами.
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,544
Записей в блоге: 1
10.06.2014, 11:26
Цитата Сообщение от IchMors Посмотреть сообщение
Danikor, очень не рекомендую использовать данный код.... У Kerry_Jr вроде всё нормально описано
так это и есть код Kerry_Jr!
0
1 / 1 / 3
Регистрация: 08.06.2014
Сообщений: 6
10.06.2014, 11:45
Посмотри, может поможет. Там сам вводишь размер матрицы и её числа.
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
#include <iostream>
using namespace std;
int main(){
    int n,i,j;
    cin >> n; //Вводишь размер матрицы
    int **mas = new int* [n];
    for (i=0;i<n;i++)
        mas[i]=new int [n];
    for (i=0;i<n;i++){      //Ввод чисел матрицы.
        for (j=0;j<n;j++){
            cin >> mas[i][j];
        }
    }
    cout << endl;
    for (i=0;i<n;i++){      //Замена отрицательных и положительных чисел.
        for(j=0;j<n;j++){
            if (mas[i][j]<0)
                mas[i][j]=0;
            else mas[i][j]=1;
            cout << mas[i][j] << "  ";
        }
        cout << endl;
    }
}
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,544
Записей в блоге: 1
10.06.2014, 11:49
Станислав9, и где же освобождение памяти?
0
1 / 1 / 3
Регистрация: 08.06.2014
Сообщений: 6
10.06.2014, 11:52
Да, забыл в код дописать. После 23 строки надо добавить этот код:
C++
1
2
3
4
5
for(int i=0; i<n; i++)
  {
      delete mas[i];
  }
    delete [] mas;
0
0 / 0 / 0
Регистрация: 04.06.2014
Сообщений: 33
10.06.2014, 12:45  [ТС]
как поменять местами максимальное и минимальное значение в одномерном массиве и потом вывести полученный массив?
0
1 / 1 / 3
Регистрация: 08.06.2014
Сообщений: 6
10.06.2014, 12:54
Лучший ответ Сообщение было отмечено Danikor как решение

Решение

Как-то так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
int main(){
    int i,*mas=new int, n,minimum,maximum;
    cin >> n;
    for (i=0;i<n;i++)
        cin >> mas[i];
    minimum=maximum=mas[0];
    for (i=0;i<n;i++){
        if (mas[i] > maximum)
            maximum = mas[i];
        if (mas[i] < minimum)
            minimum = mas[i];
    }
    cout << endl << endl;
    cout << "Maximum: " << maximum << endl;
    cout << "Minimum: " << minimum << endl;
}
0
0 / 0 / 0
Регистрация: 04.06.2014
Сообщений: 33
18.06.2014, 22:19  [ТС]
что у меня не так чтобы удаляло два первых и последний символы из слова?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <conio.h>
#include <iostream>
#include <string.h>
using namespace std;
int main ()
{
 
String a;
 
cout<< "Enter word"<<endl;
 
cin >> a;
a.erase(0,2);
a.erase(a.length()-1,1);
cout<<a<<endl;
_getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.06.2014, 22:19

Переписать в массив В все элементы матрицы А, расположенные ниже побочной диагонали
Переписать в массив В все элементы матрицы А, расположенные ниже побочной диагонали. program massivA; uses crt; const N=18; ...

Переписать в одномерный массив сначала элементы, расположенные на главной, а затем на побочной диагоналях.
Не могу написать программу по условию: Дан массив А (n,n). Переписать в одномерный массив сначала элементы, расположенные на главной, а...

Переписать элементы главной диагонали в одномерный массив
Дан двумерный массив A(N, N). Перепишите элементы его главной диагонали в одномерный массив Y(N).

Переписать элементы главной диагонали массива А[6,6] в одномерный массив
Переписати елементи головної діагоналі масиву А(6,6) в одновимірний масив В Переписать элементы главной диагонали массива А в...

[Fortran-98] Переписать элементы главной диагонали матрицы А в одномерный массив В
Помогите решить задачу или наведите на её решение, если не трудно :) Текст задачи: &quot;Переписать элементы главной диагонали...


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

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

Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru