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

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

Восстановить пароль Регистрация
 
bullin2d
0 / 0 / 0
Регистрация: 07.08.2012
Сообщений: 22
07.08.2012, 16:33     минимум среди сумм элементов диагоналей, параллельных главной #1
Оформить каждую задачу в виде функции. Все необходимые данные для функций должны передаваться в качестве параметров. Использование глобальных переменнх в функциях не допускается.
По теме "Массивы". Найти:
1) сумму элементов в тех строках, которые не содержат отрицательных элементов;
2) минимум среди сумм элементов диагоналей, параллельных главной.


По теме "Обработка символьных данных и текстовых файлов".
Вывести на экран из текста сначала вопросительные, а затем повествовательные предложения.

Непосредственно по теме "Функции".
Описать логическую функцию перестановки (x,y), проверяющую, можно ли, переставив литеры слова x, получить слово y.

Плииииз, помогите хоть с какой-нибудь из них. Нужно каждую сделать в виде функции. Заранее спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.08.2012, 16:33     минимум среди сумм элементов диагоналей, параллельных главной
Посмотрите здесь:

C++ минимум среди элементов диагоналей, параллельных главной диагонали матрицы
Найти минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы C++
Найти минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы C++
Найти минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы C++
Определить минимум среди сумм модулей элементов диагоналей параллельных побочной диагонали C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
07.08.2012, 18:28     минимум среди сумм элементов диагоналей, параллельных главной #2
Описать логическую функцию перестановки (x,y), проверяющую, можно ли, переставив литеры слова x, получить слово y:
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
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
bool iseqlen_s(char* str1, char* str2);
 
bool iseqw_s(char* str1, char* str2)
{
    bool isdiff = false;
    if (!iseqlen_s(str1,str2)) return false;
    for (int i = 0; str2[i] != '\0' && !isdiff; i++)
        isdiff = !strchr(str1, str2[i]) ? 1 : 0;
 
    return !isdiff;
}
 
bool iseqlen_s(char* str1, char* str2)
 { return strlen(str1) == strlen(str2) ? 1 : 0; }
 
int main()
{
    static char str_x[256] = "pointx", str_y[256] = "ointpx";
 
    printf("%d\n",iseqw_s(str_x, str_y));
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/af0169...a3141fd0332045
bullin2d
0 / 0 / 0
Регистрация: 07.08.2012
Сообщений: 22
07.08.2012, 18:35  [ТС]     минимум среди сумм элементов диагоналей, параллельных главной #3
спасибо конечно за труды в поиске, но я это уже видел, мне было бы неплохо всё таки на C++, а не на C. И если можно, то обойтись без логического типа, сам я только начал в универе проходить программирование, препод меня с такой задачей завалит.
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
07.08.2012, 18:39     минимум среди сумм элементов диагоналей, параллельных главной #4
C++? Вы, наверно, имели ввиду STL?! А почему вы думаете, что препод не завалит вас на STL'е?

Добавлено через 1 минуту
Этот код написан на С++, а не на Си, пример - тип bool.
bullin2d
0 / 0 / 0
Регистрация: 07.08.2012
Сообщений: 22
07.08.2012, 18:40  [ТС]     минимум среди сумм элементов диагоналей, параллельных главной #5
не знаю что такое STL, printf вроде из C, в C++ используется cout
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
07.08.2012, 18:43     минимум среди сумм элементов диагоналей, параллельных главной #6
printf - это C Standard Library, которая присутствует в любом компиляторе C++ вместе с STL - (Standard Templates Library.

cout - это STL или C++ Standard Library, туда же относится vector, map, string и другие шаблоны.

О различиях Си и С++ читайте http://ru.wikipedia.org/wiki/C%2B%2B....D0.BE.D1.82_C
bullin2d
0 / 0 / 0
Регистрация: 07.08.2012
Сообщений: 22
07.08.2012, 18:45  [ТС]     минимум среди сумм элементов диагоналей, параллельных главной #7
благодарю за разъяснения
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
07.08.2012, 18:47     минимум среди сумм элементов диагоналей, параллельных главной #8
Пише для вас две следующие задачи.
bullin2d
0 / 0 / 0
Регистрация: 07.08.2012
Сообщений: 22
07.08.2012, 18:50  [ТС]     минимум среди сумм элементов диагоналей, параллельных главной #9
Это просто шикарно! Спасибо огромное! Я попал туда, куда надо)
kvasik4ok
 Аватар для kvasik4ok
0 / 0 / 0
Регистрация: 07.08.2012
Сообщений: 10
07.08.2012, 18:51     минимум среди сумм элементов диагоналей, параллельных главной #10
Ох щи,отличный ресурс!!
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
07.08.2012, 19:23     минимум среди сумм элементов диагоналей, параллельных главной #11
Вывести на экран из текста сначала вопросительные, а затем повествовательные предложения:
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
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
 
int main()
{
    static char str[256] = "C++ is object-oriented programming language. What is a vector<>? STL includes the queue standard template. How to use map?";
    
    char pchars[] = "?.";
    for (int q = 0; pchars[q] != '\0'; q++)
    {
        for (int i = 0; str[i] != '\0'; i++)
        {
            char temp[256] = "\0";
            for (int k = i-1; str[k] != pchars[0] && str[k] != pchars[1] && 
                 str[i] == pchars[q] && k >= 0; k--)
            {
                for (int d = strlen(temp)-1; d >= 0; d--)
                     temp[d+1] = temp[d]; 
                *temp = str[k];
            }
 
            if (strcmp("\0",temp) < 0)
                printf("%s\n",temp);
        }
 
        printf("\n");
    }
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/187d28...bd7058d5625e7d
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
07.08.2012, 19:41     минимум среди сумм элементов диагоналей, параллельных главной #12
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
43
44
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
 
#define N 10
 
int main()
{
    int** X = new int*[N];
 
    for (int z1 = 0; z1 < N; z1++)
    {
        X[z1] = new int[N];
        for (int z2 = 0; z2 < N; z2++)
        {
            X[z1][z2] = rand() % (N-1) + 1;
            printf("%d ",X[z1][z2]);
        }
 
        printf("\n");
    }
 
    printf("\n");
 
    int min_s = 0;
    for (int q = 1; q < N; q++)
    {
        int sum = 0;
        for (int i = 0; i < N-q; i++)
        {
            printf("%d ",X[i+q][i]);
            sum+=X[i+q][i];
        }
 
        printf("sum = %d min = %d\n",sum,min_s);
        min_s = (min_s == 0 || sum < min_s) ? sum : min_s;
    }
 
    printf("\nmin = %d\n",min_s);
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/509129...8fd49720528a66
Миниатюры
минимум среди сумм элементов диагоналей, параллельных главной  
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
07.08.2012, 20:03     минимум среди сумм элементов диагоналей, параллельных главной #13
1) сумму элементов в тех строках, которые не содержат отрицательных элементов:
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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
 
#define N 10
 
int main()
{
    int** X = new int*[N];
 
    for (int z1 = 0; z1 < N; z1++)
    {
        X[z1] = new int[N];
        for (int z2 = 0; z2 < N; z2++)
            X[z1][z2] = rand() % (N-1) + 1;
    }
 
    int r = 0, c = 0;
    for (int s = 0; s < N / 2; s++)
    {
        r = rand() % N; c = rand() % N;
        X[r][c]= -X[r][c];
    }
 
    for (int x1 = 0; x1 < N; x1++)
    {
        for (int x2 = 0; x2 < N; x2++)
            printf("%d ",X[x1][x2]);
        printf("\n");
    }
 
    printf("\n");
 
    for (int i = 0; i < N; i++)
    {
        bool found = false;
        for (int k = 0; k < N && !found; k++)
            found = (X[i][k] < 0) ? 1 : 0;
 
        int sum = 0; if (!found) printf("%d. - ", i);
        for (int q = 0; q < N && !found; q++)
        {
            printf("%d ",X[i][q]);
            sum+=X[i][q];
        }
 
        if (!found) printf(" - sum = %d\n",sum);
    }
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/66ffae...b83acdfbbbd4c1
Миниатюры
минимум среди сумм элементов диагоналей, параллельных главной  
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
07.08.2012, 20:04     минимум среди сумм элементов диагоналей, параллельных главной #14
Просьба говорить спасибо за каждую решенную задачу.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.08.2012, 05:33     минимум среди сумм элементов диагоналей, параллельных главной
Еще ссылки по теме:

Определить минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы C++
Определить минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы C++
C++ Найти минимум среди сумм элементов диагоналей, параллельных побочной диагонали матрицы[массив]

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

Или воспользуйтесь поиском по форуму:
bullin2d
0 / 0 / 0
Регистрация: 07.08.2012
Сообщений: 22
08.08.2012, 05:33  [ТС]     минимум среди сумм элементов диагоналей, параллельных главной #15
спасибо большое!
Yandex
Объявления
08.08.2012, 05:33     минимум среди сумм элементов диагоналей, параллельных главной
Ответ Создать тему
Опции темы

Текущее время: 09:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru