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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,925
Записей в блоге: 1
#1

алгоритмом Определить номера строк, в которых первый элемент равен последнему - C++

23.06.2012, 09:37. Просмотров 515. Ответов 9
Метки нет (Все метки)

Помогите с алгоритмом

Вот сама задача:
Дана матрица размером МxN. Определить номера строк, в которых первый элемент равен последнему.

Тут все понятно, кроме одного где строка у матрицы МxN(M- столбец или N- Строка или наоборот). и последний элемент это будет j-n ? так что ли ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.06.2012, 09:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос алгоритмом Определить номера строк, в которых первый элемент равен последнему (C++):

Определить номера строк матрицы, хотя бы один элемент которых равен C - C++
Многомерный масив. Определить номера строк матрицы R, хотя бы один элемент которых равен C, и элементы этих строк умножить на D.

Определить номера строк матрицы, хотя бы один элемент которых равен заданному значению - C++
4. Определить номера строк матрицы R, хотя бы один элемент которых равен с, и элементы этих строк умножить на d.

Найти среднее общей совокупности элементов тех строк заданной матрицы, последний элемент которых равен 1 - C++
Найти среднее арифметическое общей совокупности элементов тех строк заданной матрицы, последний элемент которых равен 1.

Определить строки прямоугольной матрицы, хотя бы один элемент которых равен с и умножить их на d - C++
Полное условие:Определить номера строк прямоугольной матрицы, хотя бы один элемент которых равен c, и элементы этих строк умножить на d. ...

Напечатать номера строк и столбца прямоугольной матрицы, на пересечении которых стоит минимальный элемент. - C++
7.7.2. Помогите, пожалуйста, решить задачу в С++. Напечатать номера строк и столбца прямоугольной матрицы, на пересечении которых...

Напечатать номера строк и столбца прямоугольной матрицы, на пересечении которых стоит максимальный элемент - C++
7.5.2. Помогите, пожалуйста, решить задачу в С++. Напечатать номера строк и столбца прямоугольной матрицы, на пересечении которых...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
enk
45 / 44 / 7
Регистрация: 16.06.2012
Сообщений: 177
23.06.2012, 09:49 #2
C++
1
char matrix[10][20]; // 10 строк по 20 символов
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,925
Записей в блоге: 1
23.06.2012, 10:00  [ТС] #3
Цитата Сообщение от enk Посмотреть сообщение
C++
1
char matrix[10][20]; // 10 строк по 20 символов
то есть если мне надо искать, это надо сделать так

C++
1
2
3
4
5
6
7
for (int i=0; i<m; i++)
for (int j=0; j<n; j++)
{
cin >> a[i][j];
if(a[0][j] == a[i-m][j])
c++;
}
так поиск строк будет ?
neske
1482 / 849 / 76
Регистрация: 26.03.2010
Сообщений: 2,917
23.06.2012, 10:09 #4
А почему тип char то? строк, имеется в виду не тип

Добавлено через 1 минуту
C++
1
2
3
for (int i = 0; i < M; ++i)
    if (arr[i][0] == arr[i][N - 1]
        ++cnt;
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,925
Записей в блоге: 1
23.06.2012, 10:23  [ТС] #5
Цитата Сообщение от neske Посмотреть сообщение
А почему тип char то? строк, имеется в виду не тип

Добавлено через 1 минуту
C++
1
2
3
for (int i = 0; i < M; ++i)
    if (arr[i][0] == arr[i][N - 1]
        ++cnt;
а какая разница между с++ и ++с ? не как не могу понять
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,925
Записей в блоге: 1
23.06.2012, 10:28  [ТС] #6
Цитата Сообщение от neske Посмотреть сообщение
А почему тип char то? строк, имеется в виду не тип

Добавлено через 1 минуту
C++
1
2
3
for (int i = 0; i < M; ++i)
    if (arr[i][0] == arr[i][N - 1]
        ++cnt;
сnt это номер строки . мне в ответ надо вывести норме строки в которых первый элемент равен последнему
neske
1482 / 849 / 76
Регистрация: 26.03.2010
Сообщений: 2,917
23.06.2012, 10:31 #7
C++
1
2
3
for (int i = 0; i < M; ++i)
    if (arr[i][0] == arr[i][N - 1]
        std::cout << i << " ";
прочитайте про преинкремент/постинкремент
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,925
Записей в блоге: 1
23.06.2012, 10:34  [ТС] #8
Все спасибо сделала программу

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 <iostream>
using namespace std;
const int MAX = 100;
 
int main()
{
    int a[MAX][MAX];
    int n, m, i, j;
    int c = 0;
    cout << "M = ";
    cin >> m;
    cout << "N = ";
    cin >> n;
    for(i=0; i<m; i++)
    for(j=0; j<n; j++)
    {
       cout << "a[" << i << "][" << j << "]=";
       cin >> a[i][j];
    }
    if (a[i][0] == a[i][n - 1])
        cout << i << endl;
     
 
system("pause");
return 0;
}
neske
1482 / 849 / 76
Регистрация: 26.03.2010
Сообщений: 2,917
23.06.2012, 10:35 #9
ошибка у вас,
C++
1
2
3
4
5
6
7
8
9
for(i=0; i<m; i++) {
    for(j=0; j<n; j++)
    {
       cout << "a[" << i << "][" << j << "]=";
       cin >> a[i][j];
    }
    if (a[i][0] == a[i][n - 1])
        cout << i << endl;
}
enk
45 / 44 / 7
Регистрация: 16.06.2012
Сообщений: 177
23.06.2012, 10:39 #10
Цитата Сообщение от Sylar9 Посмотреть сообщение
а какая разница между с++ и ++с ? не как не могу понять
++ слева - сначала идёт увеличение значения переменной, затем новое значение будет использоваться в выражении.
++ справа - сначала переменная будет использоваться в выражении, затем увеличится ее значение.
Чтобы просто увеличить переменную (c++/++c) без разницы, какую форму использовать. Можно и постфиксную и предфиксную.
А в выражении a = ++c + 1; разница есть.
Например:
C++
1
2
3
int i = 2;
int sum = ++ i + 2; // сначала увеличится значение переменной i, затем результат сложения присвоится переменной sum
int sumPost = i++ + 2; // сначала результат сложения i и 2 присвоится переменной sum и будет равен 4, переменная i увеличится только после её использования
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2012, 10:39
Привет! Вот еще темы с ответами:

Определить номера строк матрицы, все элементы которых четны - C++
Здравствуйте. Можете помочь написать и розобрать програмку на С++. В целочисленной квадратной матрицы (многомерного вектора 5х5)...

Определить номера строк матрицы, в которых знаки элементов чередуются - C++
Здравствуйте все, просьба помочь в составлении программы для этой задачи: Определить номера строк матрицы, в которых знаки элементов...

Динамика. Определить номера строк матрицы в которых знаки элементов чередуются. - C++
Доброго времени суток Господа программисты. Очень прошу Вашей помощи с решением следующей задачи:Определить номера строк матрицы, в которых...

Определить в матрице сумму элементов, номера строк которых кратны 3, а столбцов — 4 - C++
Помогите написать программу: Данные действительные числа а и b (а&gt; b). Сформировать матрицу XY , элементами которой являются...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.06.2012, 10:39
Ответ Создать тему
Опции темы

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