0 / 0 / 1
Регистрация: 10.01.2016
Сообщений: 46
1

Вычислить произведение положительных элементов заданной строки матрицы (написать код с использованием goto)

14.01.2016, 05:49. Показов 628. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Программа вычисления произведения положительных элементов строки матрицы. При обнаружении 0 выводится сообщение "Обнаружен 0!"

Ее каким-то образом нужно переделать в goto. Понятия не имею, как это сделать...

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
48
49
50
51
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    int const n = 3, m = 3;
    int array[n][m];
    int proz = 1, x;
    for (int i = 0; i<n; i++)
        for (int j = 0; j<m; j++)
        {
            array[i][j] = rand() % (5) - 2;
            cout << "A[" << i << "][" << j << "] = " << array[i][j];
            if (j < 2)
            {
                cout << " ";
            }
            else
            {
                cout << "\n";
            }
        }
 
    cout << endl;
 
    for (int i = 0; i<n; i++) {
        for (int j = 0; j<m; j++) {
            if (array[i][j]>0 && array[i][j] != 0)
                proz *= array[i][j];
        }
        cout << "Произведение положиетльных элементов " << i + 1 << " строки " << proz << endl;
        proz = 1;
        }
 
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < m; j++)
        {
            if (array[i][j]>0)
                x = array[i][j];
            else if (array[i][j] == 0)
                cout << "\nОбнаружен 0! A[" << i << "][" << j << "]";
        }
    }
 
    _getch();
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.01.2016, 05:49
Ответы с готовыми решениями:

Вычислить произведение положительных элементов строки матрицы
ПРИВЕТСТВУЮ!!!! В общем задачки простые, но не могу их разобрать!:wall: просто они мне в ближайшее...

Вычислить произведение положительных элементов строки матрицы
Вычислить произведение положительных элементов строки матрицы. При обнаружении 0 должно выдаваться...

Вычислить произведение положительных элементов строки матрицы
Пожалуйста, помогите посчитать произведение положительных элементов строки матрицы. Как это можно...

Операторы передачи управления (вычислить произведение положительных элементов строки матрицы)
Вычислить произведение положительных элементов строки матрицы. При обнаружении 0 должно выдаваться...

9
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
14.01.2016, 08:45 2
Цитата Сообщение от Konigin Посмотреть сообщение
е каким-то образом нужно переделать в goto.
использование goto - считается не приличным... В данном коде оно вобще не имеет смысла.

Цитата Сообщение от Konigin Посмотреть сообщение
C++
1
if (array[i][j]>0 && array[i][j] != 0)
на ноль проверять нет смысла. Зачем разбивать на два цикла(действия)?


Цитата Сообщение от Konigin Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
for (int j = 0; j<m; j++)
{
    array[i][j] = rand() % (5) - 2;
    cout << "A[" << i << "][" << j << "] = " << array[i][j];
    if (j < 2)
    {
        cout << " ";
    }
    else
    {
        cout << "\n";
    }
}
я определенно хочу знать человека который этому учит.
C++
1
2
3
4
5
6
7
 for (int i = 0; i<n; i++,cout<<endl)
        for (int j = 0; j<m; j++)
        {
            array[i][j] = rand() % (5) - 2;
            cout << "A[" << i << "][" << j << "] = " << array[i][j]<<" ";
            
        }
А это не Ирина Валентиновна, случайно?
Переделать for в switch
Если да, то она вобще извращенная, в край...

Ладно, мне стало тебя жаль. Это реально п*** плохо....
Я переделал первый цикл.
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
int i = -1;
    shitcode_one:
    if(i<n)
    {
        ++i;
        cout<<endl;
    }
    else
        goto shitcode_end;
    
        
        int j = -1;
        shitcode_two:
        if(j<m) 
            ++j;
        else
            goto shitcode_one;
        
            array[i][j] = rand() % (5) - 2;
            cout << "A[" << i << "][" << j << "] = " << array[i][j]<<" ";
            
        goto shitcode_two;
    
 
    shitcode_end:
 
    cout <<"Построение бдсм-цикла завершено."<< endl;
Кинь мне хоть в личку ее страничку, чисто интересно посмотреть.
0
393 / 165 / 32
Регистрация: 10.12.2015
Сообщений: 717
01.02.2016, 17:01 3
Цитата Сообщение от _Valera_ Посмотреть сообщение
использование goto - считается не приличным
Чушь. Просто надо придерживаться некоторой эстетики, а не пихать goto где попало. Когда Дейкстра опубликовал свою статью относительно goto, она была направлена в частности на fortran аудиторию.

Добавлено через 18 минут
Цитата Сообщение от _Valera_ Посмотреть сообщение
Если да, то она вобще извращенная, в край...
Опять ерунду говоришь. Вступлюсь за девушку. Это обычная практика компиляторописательства. В машинном коде нет циклов, они имитируются только с помощью скачков по коду. Поэтому чтобы понимать как написать компилятор для какого-либо языка, надо поработать на низзком уровне. Что и обучает преподаватель с помощью имитации этого процесса на высокоуровневом языке.
0
104 / 104 / 99
Регистрация: 30.06.2015
Сообщений: 272
01.02.2016, 17:55 4
cyber-satyr,

Это обычная практика компиляторописательства. В машинном коде нет циклов, они имитируются только с помощью скачков по коду. Поэтому чтобы понимать как написать компилятор для какого-либо языка, надо поработать на низзком уровне. Что и обучает преподаватель с помощью имитации этого процесса на высокоуровневом языке.
ну и писали бы тогда на тёте "асе" JMP'ы...а в высокоуровневом языке такие вещи просто неприемлемы, теряется структура и общие восприятие кода...
0
393 / 165 / 32
Регистрация: 10.12.2015
Сообщений: 717
01.02.2016, 18:08 5
Цитата Сообщение от ThePlague Посмотреть сообщение
в высокоуровневом языке такие вещи просто неприемлемы
Являться членом секты goto хейтеров тоже не делает чести. Сколько языков и компиляторов к ним ты написал? Подозреваю ни одного, т.к. даже родной осилить не в состоянии.
0
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
01.02.2016, 18:08 6
Цитата Сообщение от cyber-satyr Посмотреть сообщение
Чушь. Просто надо придерживаться некоторой эстетики, а не пихать goto где попало. Когда Дейкстра опубликовал свою статью относительно goto, она была направлена в частности на fortran аудиторию.
да, да, у всех свое мнение по этому поводу, я тоже не против того что бы в нужном месте использовать его. А высказал мнение большинства.

И фразу до конца смотреть надо
Цитата Сообщение от _Valera_ Посмотреть сообщение
. В данном коде оно вобще не имеет смысла.
если ты считаешь иначе, то разговор можно завершать.

Цитата Сообщение от cyber-satyr Посмотреть сообщение
надо поработать на низзком уровне.
го ту это низкий уровень?

Цитата Сообщение от cyber-satyr Посмотреть сообщение
Это обычная практика компиляторописательства.
Это обычная практика не компетентных людей, которые код видели только на картинке.


Цитата Сообщение от cyber-satyr Посмотреть сообщение
Вступлюсь за девушку
И какую еще хе*ню попросим программировать студентов?

Цитата Сообщение от cyber-satyr Посмотреть сообщение
Чушь.
Цитата Сообщение от cyber-satyr Посмотреть сообщение
Опять ерунду говоришь
Я высказал свое мнение, и остался при нем. "Преподавателей" которые никогда не работали в ИТ и не писали ничего серьезного, гнать надо в шею из вузов, школ или куда они еще сумели влезть.

А написал я все это, потому что мне стало жаль ТС, возможно он поступал в вуз и хотел стать профессионалом в своей области, а препода ему поставили не компетентную дуру которая на всю жизнь отобьет желание программировать. Сколько еще таких по всему мир?
1
393 / 165 / 32
Регистрация: 10.12.2015
Сообщений: 717
01.02.2016, 18:19 7
Цитата Сообщение от _Valera_ Посмотреть сообщение
го ту это низкий уровень?
Самый что ни на есть низкий. Заменяется одной инструкцией asm'a.
_Valera_, я рассуждаю так: задача поставлена, ограничения озвучены. Исполнитель обязан выполнить задачу с учетом огрничений. Сами по себе ограничения не так глупы как может показаться. Просто чтобы это понять надо иметь практики чуть более вычисления студенческих задач этой страны. Для сравнения в CS ненавистного пиндостана такие задачи могут быть как часть лекции, а в качестве самостоятельного задания там дают более серьезные вещи. Например, написать компилятор некоторого учебного языка, сформулированного в пару десятков строк СБНФ.
Цитата Сообщение от _Valera_ Посмотреть сообщение
Я высказал свое мнение
Я думаю что доходчиво пояснил тебе в чем именно и почему твое мнение ошибочно.
0
104 / 104 / 99
Регистрация: 30.06.2015
Сообщений: 272
01.02.2016, 18:23 8
cyber-satyr, каждому обьяснять уже успал...просто глянь страну проживания. мы сдесь не на форуме граматики русского языка!

а по сабжу тебе уже _Valera_, все сказал...я могу только присоединиться к его высказываниям...
+1
0
393 / 165 / 32
Регистрация: 10.12.2015
Сообщений: 717
01.02.2016, 18:29 9

Не по теме:

ThePlague, я жил в европе довольно длительное время. Это не помешало мне уважительно относиться к себе и стараться следить за своим правописанием.


А что по сабжу, так мне просто кажется что я трачу свое время на некомпетентных людей. Аргументы довольно внятны. По аргументам нет никакой критики, а только детские выкрики типа "сам дурак".
0
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
01.02.2016, 18:29 10
cyber-satyr, Диалог окончен.
0
01.02.2016, 18:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.02.2016, 18:29
Помогаю со студенческими работами здесь

Найти произведение и количество положительных элементов заданной матрицы
Помогите, пожалуйста, решить. Заранее спасибо. Задача: Найти произведение и количества...

Динамический массив. Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы
#include &lt;iostream.h&gt; #include &lt;math.h&gt; #include &lt;string.h&gt; int kol_vo(int **a, int n, int...

Вычислить произведение сумм положительных элементов строк матрицы
В матрице размерности 7 на 7 посчитать произведение сумм положительных элементов строк. В каждом...

Найти произведение положительных элементов каждой строки матрицы
Найти произведение положительных элементов каждой строки матрицы А.Найти минимальное среди них и...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru