Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.81/21: Рейтинг темы: голосов - 21, средняя оценка - 4.81
1766 / 443 / 45
Регистрация: 09.04.2009
Сообщений: 2,599

Матрица,функция или процедура.

01.06.2009, 22:53. Показов 4500. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго всем времени.
Пытаюсь написать функцию или процедуру. ” В заданной целочисленной матрице A(N, M) выведите на печать индексы первого положительного элемента, кратного заданному числу K. Если таких элементов в матрице нет, то выведите соответствующий текст. Элементы матриц просматривайте слева направо и сверху вниз ”
Помогите пожалуйста разобраться.
Это мои труды.
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
#include<stdio.h>
  #include<conio.h>
  #include<iostream.h>
  void krat()
  {
  //n - Kol-wo strok
  //m - Kol-wo stolbzow
  int K;//Chislo kratnosti
  int i=0, j=0, n, m, arr;
    for (i; i<=n; i++);//prohod po strokam s leva na prawo
      {
      for (j; j<=m; j++);//prohod po stolbtzam swerhu wniz
      {
       //Prowerka uclowii
      if (arr [i][j]>0)//poloshitelnoe
          (arr[i][j]/K)//Kratnost
          if ( K == 0)
          printf("%d\n",i,j);
          }
          //Esli uslowie ne wypol-
          //njaetsja , idem dalshe
          else (j++);
      }
       printf ("%i\nNe naideno");
  getch();       
  }
Будет ли это функцией или процедурой?
Выведите на печать индексы первого положительного элемента, как это можно реализовать. Думается, нужен какой-либо счётчик, но как?
Компилятор ругается: Misplaced else, (22 строка)
Invalid indirection (14.15 строки)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.06.2009, 22:53
Ответы с готовыми решениями:

Матрица и процедура
Добрый день, товарищи, такой вопрос возник: акромя как дополнительным оператором функции никак нельзя сделать эту задачу? Хотелось бы...

Матрица и процедура
Народ завтра зачёт помогите, буду очень блогодарен!!! 1.дано целочисленную матрицу размера 3 х4. Найти среднее арифметическое...

Двумерный массив.Матрица. Функция,файл,процедура.
написал программу var a,c:array of real; //массив матрицы A и C b:array of real; //массив матрицы B m:array of real; //массив...

7
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
02.06.2009, 00:22
else у тебя стоит не после if, а после скобки от цикла. Отсюда ошибка.
В 15 строке, может, пробле после arr убрать?
А вообще похоже на процедуру, в код не вдавался.
1
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
02.06.2009, 00:52
На c++ в проекте должна быть программа с именем main ().
После того, как исправите в своей функции ошбки, напишите
int main ()
{
krat();
return 0;
}
В программе вызавется функция krat.
Вообще, у меня ругается на #include <iostream.h>.
1
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
02.06.2009, 01:00
Цитата Сообщение от qwert Посмотреть сообщение
Вообще, у меня ругается на #include <iostream.h>.
убери .h из названия хедера.

Добавлено через 1 минуту 18 секунд
Цитата Сообщение от qwert Посмотреть сообщение
На c++ в проекте должна быть программа с именем main ().
Рассмотри с точки зрения того, что человек юзает модуль и экспортит эту функцию. Тогда main() совсем не нужен. Дай людям подумать.
1
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
02.06.2009, 09:30
Цитата Сообщение от Vourhey Посмотреть сообщение
убери .h из названия хедера.
Я про это знаю, я к тому, что там есть такая ошибка.

Цитата Сообщение от Vourhey Посмотреть сообщение
Рассмотри с точки зрения того, что человек юзает модуль и экспортит эту функцию. Тогда main() совсем не нужен. Дай людям подумать.
Ну, исходя из того, что там подключены библиотеки, да и getch () даже есть, то это явно предполагалось, наверное, как готовая функция.
0
 Аватар для Monte-Cristo
2816 / 1408 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
02.06.2009, 09:36
Цитата Сообщение от qwert Посмотреть сообщение
Я про это знаю, я к тому, что там есть такая ошибка.
ну смотря под какой компилятор писать... Visual C++ 6 компилит и c .h
а многие так вообще пишут для borland c++ 3.1
0
1766 / 443 / 45
Регистрация: 09.04.2009
Сообщений: 2,599
02.06.2009, 18:44  [ТС]
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
ну смотря под какой компилятор писать... Visual C++ 6 компилит и c .h
а многие так вообще пишут для borland c++ 3.1

Вот именно, Visual C++ 2008 и Borland C++ 3.1 компилят с .h, ими и пользуюсь.

Добавлено через 7 минут 17 секунд
Цитата Сообщение от qwert Посмотреть сообщение
Я про это знаю, я к тому, что там есть такая ошибка.


Ну, исходя из того, что там подключены библиотеки, да и getch () даже есть, то это явно предполагалось, наверное, как готовая функция.
Мне и нужна функция.

Все таки как с этим разобратся?
Выведите на печать индексы первого положительного элемента, как это можно реализовать. Думается, нужен какой-либо счётчик, но как?

Добавлено через 2 минуты 29 секунд
Цитата Сообщение от Vourhey Посмотреть сообщение
else у тебя стоит не после if, а после скобки от цикла. Отсюда ошибка.
В 15 строке, может, пробле после arr убрать?
А вообще похоже на процедуру, в код не вдавался.
Убрал пробел после arr, ошибка таже.
0
 Аватар для insolent
829 / 353 / 64
Регистрация: 30.01.2009
Сообщений: 1,204
02.06.2009, 20:43
Попробуй этот
код
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
52
53
54
55
56
57
58
59
60
61
62
#include "stdafx.h"
#include <iostream>
#include <ctime>
using namespace std;
 
void out(int *a,int n,int m);
void vin(int *a,int n);
void prof(int *a,int n,int m,int k);
int main(int argc, char* argv[])
{
    setlocale(0,"");
    int *a,
        n,m,k;
    cout << "Введите количество строк матрицы: ";
    wcin >> n;
    cout << "Введите количество столбцов матрицы: ";
    wcin >> m;
    cout << "Введите число: ";
    wcin >> k;
    _flushall();
    a = new int[n*m];
    vin(a,n*m);
    out(a,n*m,m);
    prof(a,n*m,m,k);
    delete[]a;
    getchar();
    return 0;
}
void out(int *a,int n,int m){
    int x = m-1;
    for(int i = 0; i < n;i++){
        cout << a[i] << "   ";
        if(i == x){
            cout << endl;
            x += m;
        }
    }
    cout << "\n\n";
}
void vin(int *a,int n){
    srand(time(0));
    for(int i = 0; i < n;i++)
        a[i] = rand()%401-200;
}
void prof(int *a,int n,int m,int k){
    int x = m-1, 
        y = 0,
        j = 0;
    for(int i = 0;i < n;i++){
        if((a[i] > 0) && (a[i]%k == 0)){
            cout << "Первый положительный элемен, кратный " << k << " A[" << y+1 << "][" << j+1 << "] = " << a[i] <<endl;
            break;
        }
        if(i == x){
            y++;
            x += m;
        }
        if(j == (m-1))
            j = 0;
        j++;
    }
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.06.2009, 20:43
Помогаю со студенческими работами здесь

Процедура или функция
Найти площадь правильного n-угольника со стороной a.Решить с помощью подпрограммы.

Процедура или функция?
Смотрю курс видеоуроков, уже начинаем писать консольную игру. Но у меня возник вопрос: Когда нужно использовать функцию, а когда...

процедура или функция
проблема такая.... хотел сделать процедуру для вычисления некоторого значения(так как она в программе используется дважды), но на кусок...

Функция или процедура
Нужно сделать программу через процедуры или функции var F: array of integer; k, l: integer; i, j: byte; begin ...

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


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru