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

Функции в С++ - C++

Восстановить пароль Регистрация
 
Nyto4ka
0 / 0 / 0
Регистрация: 10.05.2010
Сообщений: 22
10.05.2010, 18:55     Функции в С++ #1
Помогите пожалуйста решить задачки...
1. Используя функции сформировать двумерный массив и вывести его на печать. Выполнить обработку двумерного массива в соответствии с вариантом, используя функции, результат вывести на печать.

В матрице Х(n,n) поменять местами элементы на главной и побочной диагоналях. Проверить, поменялось ли положение максимального элемента в каждой строке.


2. Ввести с клавиатуры строку символов и обработать ее в соответствии со своим вариантом, используя функции.

Удалить все гласные буквы из строки.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2010, 18:55     Функции в С++
Посмотрите здесь:

C++ Как из обыной функции вызвать функции член класса?
Dызовом родовой функции! Нужно передать массив в качестве аргумента функции через указатель." C++
ввод данных в функции конструктора и использование их в перегруженой функции C++
C++ Заданы три функции. Определить, являются ли эти функции четными или нечетными
C++ Получить указатель из функции и использовать его в другой функции
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
EvilSlipp3r
32 / 32 / 3
Регистрация: 25.03.2010
Сообщений: 45
10.05.2010, 20:22     Функции в С++ #2
2)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
using namespace std;
#include <string>
 
void deleteletters (string &str){
    for(int i = 0; i < str.length();i++ ) {
        if(str[i] == 'a' || str[i] == 'e' || str[i] == 'i' || str[i] == 'o' || str[i] == 'u' || str[i] == 'y'  )
        str.erase(i,1);
    }
}
 
int main() 
{   
    string str;
    cout << "Enter string: " ;
    getline(cin, str);
    deleteletters(str);
    cout << "After edition: " << str;
    system("PAUSE");
    return 0;
}
Nyto4ka
0 / 0 / 0
Регистрация: 10.05.2010
Сообщений: 22
10.05.2010, 22:08  [ТС]     Функции в С++ #3
что значит "str.erase(i,1)"?
и можно как-то без подключения using namespace std;??

Добавлено через 1 минуту
а можно как-то без подключения using namespace std;??
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
11.05.2010, 01:42     Функции в С++ #4
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#include <stdio.h>
#include <time.h>
 
void form_mas(int **mas, int res)
{
    int i, j;
    
    srand(time(NULL));
    
    for (i = 0; i < res; i++)
        for (j = 0; j < res; j++)
            mas[i][j] = -10 + rand() % 40;
}
 
void print_mas(int **mas, int res)
{
    int i, j;
    
    for (i = 0; i < res; i++)
    {
        for (j = 0; j < res; j++)
            printf("%d ", mas[i][j]);
        
        printf("\n");
    }
}
 
void swap_diag(int **mas, int res)
{
    int i, j;
    int temp;
    
    for (i = 0, j = res - 1; i < res; i++, j--)
    {
        temp = mas[i][i];
        mas[i][i] = mas[i][j];
        mas[i][j] = temp;
    }
}
 
int max_index(int **mas, int n, int k)
{
    int i;
    int max_index;
    
    for (i = 0, max_index = 0; i < n; i++)
        if (mas[k][max_index] < mas[k][i])
            max_index = i;
    
    return max_index;
}
 
int main()
{
    int **X;
    int n;
    int i, j;
    
    printf("Input n: ");
    scanf("%d", &n);
    printf("\n");
    
    X = (int **)malloc(n * sizeof(int *));
    
    for (i = 0; i < n; i++)
        X[i] = (int *)malloc(n * sizeof(int));
    
    form_mas(X, n);
    print_mas(X, n);
    swap_diag(X, n);
    printf("\n");
    print_mas(X, n);
    
    for (i = 0, j = n - 1; i < n; i++, j--)
        if ((max_index(X, n, i) == i) || (max_index(X, n, i) == j))
            printf("Da\n");
        else
            printf("Net\n");
    
    getch();
    return 0;
}
Добавлено через 2 минуты
Упс, перед getch() дописать это
C
1
2
3
4
    for (i = 0; i < n; i++)
        free(X[i]);
        
    free(X);
Nyto4ka
0 / 0 / 0
Регистрация: 10.05.2010
Сообщений: 22
11.05.2010, 02:00  [ТС]     Функции в С++ #5
спасибо конечно, но мне нужно на С++...

Добавлено через 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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <stdlib.h>
#include <iostream.h>
#include <conio.h>
#include <math.h>
 
int **mas(int &n,int &m){
    int i,j;
    cout<<"vved col strok matr:";
    cin>>n;
    cout<<"\nvved col stolbcov:";
    cin>>m;
    int **a=new int*[n];
    for (i=0;i<n;i++){
        a[i]=new int[m];}
        for (i=0;i<n;i++)
        for (j=0;j<m;j++)
        a[i][j]=rand()%10-1;
        return a;}
void print(int **a,int n, int m){
          int i,j;
          for (i=0;i<n;i++){
              for (j=0;j<m;j++)
               cout<<a[i][j]<<" ";
               cout<<"\n";}}
 
 
int diag (int &n,int&m){
int i,j;
int **a,b;
 
{ for (i=0; i<n; i++)
                for (j=0; j<n; j++)
                {
                        b = a[i][j];
                        a[i][j]=a[i][n-1-j];
                        a[i][n-1-j]=b;
                        i++;
                        
            return **a;
                }}}
        
                
       
        
 
 
 
int main()
{int **a;
 int n,m,i,j;
 int b;
 a=mas(n,m);
 print (a,n,m);
 
     
             printf("Modif matrix:\n");
             for (i=0; i<n; i++)
        {
                for (j=0; j<n; j++)
                {
                        printf ("%4i", a[i][j]);
                }
                printf ("\n");
        }
        
 
 getch();
    }
Добавлено через 1 минуту
вот мой код..ток возвращает он ту же самую матрицу.
EvilSlipp3r
32 / 32 / 3
Регистрация: 25.03.2010
Сообщений: 45
11.05.2010, 02:01     Функции в С++ #6
Цитата Сообщение от Nyto4ka Посмотреть сообщение
что значит "str.erase(i,1)"?
и можно как-то без подключения using namespace std;??
1) str.erase(i,n) - удаляет из строки str n-символов, начиная с i-ой позиции
2) хм, может быть и можно, но зачем ?
Nyto4ka
0 / 0 / 0
Регистрация: 10.05.2010
Сообщений: 22
11.05.2010, 02:04  [ТС]     Функции в С++ #7
просто мы это не проходили еще)
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
11.05.2010, 02:07     Функции в С++ #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
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include <iostream.h>
#include <conio.h>
#include <time.h>
 
void form_mas(int **mas, int res)
{
    int i, j;
 
    srand(time(NULL));
 
    for (i = 0; i < res; i++)
        for (j = 0; j < res; j++)
            mas[i][j] = -10 + rand() % 40;
}
 
void print_mas(int **mas, int res)
{
    int i, j;
 
    for (i = 0; i < res; i++)
    {
        for (j = 0; j < res; j++)
            cout << mas[i][j] << " ";
 
        cout << endl;
    }
}
 
void swap_diag(int **mas, int res)
{
    int i, j;
    int temp;
 
    for (i = 0, j = res - 1; i < res; i++, j--)
    {
        temp = mas[i][i];
        mas[i][i] = mas[i][j];
        mas[i][j] = temp;
    }
}
 
int max_index(int **mas, int n, int k)
{
    int i;
    int max_index;
 
    for (i = 0, max_index = 0; i < n; i++)
        if (mas[k][max_index] < mas[k][i])
            max_index = i;
 
    return max_index;
}
 
int main()
{
    int **X;
    int n;
    int i, j;
 
    cout << "Input n: ";
    cin >> n;
    cout << endl;
 
    X = new int*[n];
 
    for (i = 0; i < n; i++)
        X[i] = new int[n];
 
    form_mas(X, n);
    print_mas(X, n);
    swap_diag(X, n);
    cout << endl;
    print_mas(X, n);
    cout << endl;
 
    for (i = 0, j = n - 1; i < n; i++, j--)
        if ((max_index(X, n, i) == i) || (max_index(X, n, i) == j))
            cout << "Da" << endl;
        else
            cout << "Net" << endl;
 
    getch();
    return 0;
}
Nyto4ka
0 / 0 / 0
Регистрация: 10.05.2010
Сообщений: 22
11.05.2010, 02:19  [ТС]     Функции в С++ #9
спасибо, выручил))
надеюсь не в последний раз)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2010, 02:20     Функции в С++
Еще ссылки по теме:

C++ Определить конструкторы, функции-члены установки времени, функции получения часа, минуты и секунд
Возврат 2 значений из функции с одним вызовом этой же функции C++
Написать блок-схему и программу вычисления функции на заданном промежутке и построить график этой функции C++

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

Или воспользуйтесь поиском по форуму:
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
11.05.2010, 02:20     Функции в С++ #10
Обращайся)))
Yandex
Объявления
11.05.2010, 02:20     Функции в С++
Ответ Создать тему
Опции темы

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