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

кто чем может, 4 программы на разные темы. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Самописный класс (.cpp +.h) ошибка ambiguity between... http://www.cyberforum.ru/cpp-beginners/thread131548.html
Я вобще почти ничего не знаю в c++, самый что нинаесть новичок, пытаюсь разобраться с классически принятой(сообществом) структурой проектов, как где что объявлять лучше, в каких файлах и т.д. Вобщем подучите, где накосячил: файл stack.h struct point { int x; int y; }; class TStack {
C++ Файлы Помогите плиз Создать текстовый файл f, содержащий любое арифметическое выражение, например, (2x+3y)*((x+y)-3(xy-4)+5). Определить, совпадает ли в нем количество открывающихся и закрывающихся скобок, если нет, то каких не хватает и сколько. http://www.cyberforum.ru/cpp-beginners/thread131546.html
C++ bind1st и bind2nd
Проблемы с std::bind1st и std::bind2nd Пишу такой код: void foo(int &t, int &t) { } int main() { int a; std::for_each(a, a + 10, std::bind1st(foo, 1));
C++ Найти все натуральные числа, которые не превышают заданного N и деляться на каждую из своих цифр
Знайти всі натуральні числа, які не перевищують заданого n і діляться на кожну зі своїх цифр (в десятковій системі числення) Найти все натуральные числа, которые не превышают заданного N и деляться на каждую из своих цифр. Заранее спасибо. Если можно - только сам кусок кода, находящий цифры. остальное я бы и сам написал.
C++ Движение точки http://www.cyberforum.ru/cpp-beginners/thread131483.html
Очень нужна помощь с таким заданием: написать движение точки по ломанному пути( туда и обратно ) на входе: массив точек - узлы ломанного пути и скорость точки( пиксел в секунду ) точка должна пройти все узлы и вернуться обратно в обратном порядке рисовать не обязательно - главное чтоб можно было увидеть в коде "механику" движения
C++ Написать рекурсивную функцию вычисления сочетания n то k Вот проблемка Написать рекурсивную функцию вычисления сочетания n то k. подробнее

Показать сообщение отдельно
Zir-c0de
Сообщений: n/a

кто чем может, 4 программы на разные темы. - C++

18.05.2010, 13:52. Просмотров 296. Ответов 0
Метки (Все метки)

Прошу, кто сможет, помогите получить зачет! нужна помощь при написании программ на Microsoft Visual C++ по двумерным массивам, обработка символьных данных и текстовых файлов, программирование с использованием функций пользователя и программирование с использованием структурированного типа данных.

Итак, начнем по порядку:
а)работа с двумерными массивами.
Определить:
1)произведение элементов в тех строках, которые не содержат отрицательных элементов;
2)максимум среди элементов диагоналей, параллельных главной диагонали матрицы.
матрица B(n,n) элементы матрицы- целые числа.
по этому заданию есть примерные наработки:
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
#include <iostream.h>
#include <windows.h>
#include <math.h>
 
char*Rus (const char*text);
 
int main()
{
    int B[63][63], C[63];
    int s,i,j,m,k,r;
    
    cout<<Rus("Введите размерность массива: ");
    cin>>m;
 
    cout<<Rus("Введите элементы массива:\n");
    for(i=0; i<m; i++)
        for (j=0; j<m; j++)
            cin>>B[i][j];                //ввод массива
 
    cout<<Rus("\nВведённые элементы:\n");   
    for(i=0; i<m; i++) {
        cout<<endl;
        for (j=0; j<m; j++)
            cout<<B[i][j]<<" ";}        //вывод введённого массива
 
    s=0;
    for(j=0; j<m; j++)
        for (i=0; i<m; i++)     
            if ((s==0)&&(B[j][i]==0))   s=j+1;          //нахождение номера столбца с нулевым элементом
 
    cout<<Rus("\n\nПервый столбец с нулевым элементом:\n\n")<<s;    //вывод номера
 
    for(i=0; i<m; i++){
        C[i]=0;
        for (j=0; j<m; j++)
            if ((B[i][j]<0)&&(j%2==1)) C[i]+=B[i][j];}  //нахождение характеристик строк
    
    cout<<Rus("\n\nХарактеристики строк:\n");
    for(i=0;i<m;i++){
        cout<<endl; cout<<C[i];}                    //вывод характеристик
    
    for (i=0; i<m; i++)
        for (j=i; j<m; j++)
            if (C[i]<C[j])
                for (k=0; k<m; k++) {
                    r=B[i][k]; B[i][k]=B[j][k]; B[j][k]=r;  //сортировка строк взависимости от их характеристик
                    r=C[i]; C[i]=C[j]; C[j]=r;
                    }
 
 
 
    cout<<Rus("\n\nПолученный массив:\n");  
    for(i=0; i<m; i++) {
        cout<<endl;
        for (j=0; j<m; j++)
            cout<<B[i][j]<<" ";}        //вывод отсортированного массива на экран
 
 
 
    int t;
    cin>>t;
return 0;
}
 
/////////////////////  {кириллица}
char bufRus[256];
char*Rus (char const*text)
{
    CharToOem(text,bufRus);
    return bufRus;
}
/////////////////////
и
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
#include <iostream.h>
#include <windows.h>
#include <math.h>
 
char*Rus (const char*text);
 
int main()
{
    int B[63][63], C[63];
    int s,i,j,m,k,r;
    
    cout<<Rus("Введите размерность массива: ");
    cin>>m;
 
    cout<<Rus("Введите элементы массива:\n");
    for(i=0; i<m; i++)
        for (j=0; j<m; j++)
            cin>>B[i][j];                //ввод массива
 
    cout<<Rus("\nВведённые элементы:\n");   
    for(i=0; i<m; i++) {
        cout<<endl;
        for (j=0; j<m; j++)
            cout<<B[i][j]<<" ";}        //вывод введённого массива
 
    s=0;
    for(j=0; j<m; j++)
        for (i=0; i<m; i++)     
            if ((s==0)&&(B[j][i]==0))   s=j+1;          //нахождение номера столбца с нулевым элементом
 
    cout<<Rus("\n\nПервый столбец с нулевым элементом:\n\n")<<s;    //вывод номера
 
    for(i=0; i<m; i++){
        C[i]=0;
        for (j=0; j<m; j++)
            if ((B[i][j]<0)&&(j%2==1)) C[i]+=B[i][j];}  //нахождение характеристик строк
    
    cout<<Rus("\n\nХарактеристики строк:\n");
    for(i=0;i<m;i++){
        cout<<endl; cout<<C[i];}                    //вывод характеристик
    
    for (i=0; i<m; i++)
        for (j=i; j<m; j++)
            if (C[i]<C[j])
                for (k=0; k<m; k++) {
                    r=B[i][k]; B[i][k]=B[j][k]; B[j][k]=r;  //сортировка строк взависимости от их характеристик
                    r=C[i]; C[i]=C[j]; C[j]=r;
                    }
 
 
 
    cout<<Rus("\n\nПолученный массив:\n");  
    for(i=0; i<m; i++) {
        cout<<endl;
        for (j=0; j<m; j++)
            cout<<B[i][j]<<" ";}        //вывод отсортированного массива на экран
 
 
 
    int t;
    cin>>t;
return 0;
}
 
/////////////////////  {кириллица}
char bufRus[256];
char*Rus (char const*text)
{
    CharToOem(text,bufRus);
    return bufRus;
}
/////////////////////
b)Обработка символьных данных и текстовых файлов?
переписать в выходную строку слова из входной строки в порядке возрастания их длины.

c)Программирование с использованием функций пользователя:
Даны отрезки a, b, c и d. Для каждой тройки этих отрезков можно построить треугольник и напечатать площадь этого треугольника.(Определить функцию PrintS(x, y, z) печатающую площадь треугольника со сторонами x, y, z, если такой треугольник существует). a, b, c, d принадлежат N.

И последнее:
d)Программирование с использованием структурного типа данных.
Перечень полей структурирования переменной:
Фамилия, имя, отчество, название занимаемой должности, год поступления на работу.
На этом всё. Если потребуется что-то уточнить- пишите.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru