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

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

Войти
Регистрация
Восстановить пароль
 
stuzer
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 3
#1

cpp, массивы, работа с файлами, условие внутри, решение? - C++

19.12.2010, 15:57. Просмотров 718. Ответов 8
Метки нет (Все метки)

Кто может, помогите с решением:
1 Задана таблица успеваемости учеников 10 класса за первое полугодие по 14 предметам. Составить программу вычисления среднего балла каждого из 34 учеников класса.

2 Дан массив из n целых чисел. Заменить максимальный по модулю отрицательный элемент нулем.

3 Найти произведение угловых элементов матрицы.

4 Найти сумму элементов матрицы, стоящих на главной диагонали.

5 Имеется таблица выигрышей денежно-вещевой лотереи. Первый ее столбец содержит номер билета, второй – серию, третий – название выигрыша, четвертый – денежное выражение выигрыша (цену)

6 Дан массив данных об автомобилях: фамилия владельца, регистрацион-ный номер, марка автомобиля, объем двигателя. Распечатать количество автомобилей заданной марки ( ввод с клавиатуры), вывести всю инфор-мацию об автомобилях указанного пользователем объема двигателя.

7 Дан двумерный массив размером 6 * 6, заполненный случайным образом. Заменить последний отрицательный элемент каждой строки на нуль.

Если можете, то помогите, если не можете, то не флудите. Большинство заданий сделал, остались эти как наиболее объемные. Особенно волнуют 4, 5, 6. Время поджимает, сдать нужно к н.г. поэтому пишу сюда
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2010, 15:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос cpp, массивы, работа с файлами, условие внутри, решение? (C++):

Как написать программу с несколькими .cpp файлами - C++
Как написать программу с несколькими .cpp файлами? Сколько сам пробывал, появляется куча ошибок( Конкретно меня интересует, как их...

Не компилируется проект, возникают ошибки связанные с файлами .cpp - C++
Создаю класс, но IDE (VS 2015 Community) не хочет собирать проект, пишет разного рода ошибки: FirstSFMLGame.cpp: #include...

Неясное условие внутри команды ветвления - C++
if(stricmp(nds.first, "exit")==0) { return false; } Где nds - это экземпляр класса, а...

Работа с dbf-табличками на CPP 3.1 - C++
Добрый день, уважаемая публика... Вопрос: какие существуют средства или библиотеки для программирования на CPP 3.1 работы под DOS с...

Как ввести в предикат условие с клавиатуры? Подробнее внутри - C++
Судари,есть вот такой кусок кода bool killer(Task a) { return a.pageNum>0;//Вот тут } int main() { ...

С помощью командной строки >namberstr f1.cpp Определить число строк в файле с именем f1.cpp - C++
С помощью командной строки >namberstr f1.cpp Определить число строк в файле с именем f1.cpp

8
Reee
21 / 21 / 1
Регистрация: 21.09.2010
Сообщений: 65
19.12.2010, 16:27 #2
2 Дан массив из n целых чисел. Заменить максимальный по модулю отрицательный элемент нулем.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#define n 5
int main()
{
    int mass[n];
 
    for(int i=0; i<n; i++)
        std::cin>>mass[i];
 
    int a=mass[0],y;
 
    for(int i=0; i<n; i++)
        if(mass[i]<0 && mass[i]<a)
        {
            a=mass[i];
            y=i;
        }
    mass[y]=0;
 
    for(int i=0; i<n; i++)
        std::cout<<mass[i]<<",";
}
Добавлено через 7 минут
4 Найти сумму элементов матрицы, стоящих на главной диагонали.
Как я понял матрица квадратная дана.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#define n 5
int main()
{
    int mass[n][n]={
        {1,0,0,0,0},
        {0,1,0,0,0},
        {0,0,1,0,0},
        {0,0,0,1,0},
        {0,0,0,0,1}};
 
    int sym=0;
    for(int i=0; i<n; i++)
        for(int k=0; k<n; k++)
            if(i==k)
                sym+=mass[i][k];
    std::cout<<sym;
}
1
kravam
быдлокодер
1695 / 882 / 45
Регистрация: 04.06.2008
Сообщений: 5,470
19.12.2010, 17:17 #3
7-е

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
#include <iostream>
using namespace std;
 
int main () {
 int i, j;
 int array [6] [6]= {{1, 2, 3, 4, 5, 6},{4, -5, 6, -7, 8, 9},{3, 5, 6, -7, 8, 9},
 {2, 3, 5, 6, 7, 8},{7, 5, 4, -3, 4, 5},{1, 2, 3, 0, 8, -5}};
 
 for (i= 0; i< 6; i++) {
  for (j= 0; j< 6; j++) {
   cout<< array [i][j]<< " ";
  }
  cout<< endl;
 }
  cout<< endl;
  cout<< endl;
 
 
 for (i= 0; i< 6; i++) {
  for (j= 5; j>= 0; j--) {
   if (array [i] [j]< 0) {
    array [i] [j]= 0;
    break;
   }
  }
 }
 
 for (i= 0; i< 6; i++) {
  for (j= 0; j< 6; j++) {
   cout<< array [i][j]<< " ";
  }
  cout<< endl;
 }
 
 getchar ();
 return 0;
}
1
Reee
21 / 21 / 1
Регистрация: 21.09.2010
Сообщений: 65
19.12.2010, 17:38 #4
7 Дан двумерный массив размером 6 * 6, заполненный случайным образом. Заменить последний отрицательный элемент каждой строки на нуль.

У меня массив заполняется случайным образом от -10 до 10.Как я понял тебе так надо.
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 <iostream>
#include <iomanip>
#define n 5
int main()
{
    int mass[n][n];
 
    for(int i=0; i<n; i++)
    {
        for(int j=0; j<n; j++)
        {
             mass[i][j] = -10+rand()%21;
             std::cout<<std::setw(3)<<mass[i][j];
        }
        std::cout<<std::endl;
    }
    
    for(int i=0; i<n; i++)
    {
        int a=0;
        for(int k=0; k<n; k++)
            if(mass[i][k]<0)
                a=k;
        mass[i][a]=0;
    }
    
    std::cout<<std::endl<<std::endl;
    for(int i=0; i<n; i++)
    {
        for(int k=0; k<n; k++)
        std::cout<<std::setw(3)<<mass[i][k];
        std::cout<<std::endl;
    }
}
2
stuzer
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 3
19.12.2010, 17:42  [ТС] #5
Да, именно так
0
Reee
21 / 21 / 1
Регистрация: 21.09.2010
Сообщений: 65
19.12.2010, 17:47 #6
Упс))) недоглядел, вместо 5 поставь 6!!!
Цитата Сообщение от Reee Посмотреть сообщение
C++
1
#define n 5
чтобы вот так было
C++
1
#define n 6
0
stuzer
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 3
19.12.2010, 17:52  [ТС] #7
да, я заметил
0
NikolaySidrov59
Сообщений: n/a
20.01.2011, 09:04 #8
А мужики-то не знают
asics
Freelance
Эксперт С++
2847 / 1782 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
20.01.2011, 19:44 #9
Цитата Сообщение от stuzer Посмотреть сообщение
2 Дан массив из 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
#include <iostream>
#include <algorithm>
#include <vector>
#include <iterator>
 
template <class T>
T MOD(T a)
{
    return ( (a) < 0? -(a) : (a) );
}
 
int main()
{
    std::vector<int> t_arr( (std::istream_iterator<int>(std::cin)), std::istream_iterator<int>() );
    int idx, i = 0, max = t_arr[0];
 
    std::for_each(t_arr.begin(), t_arr.end(), [&idx, &i, &max](int a_)
    {
        if(MOD(a_) > max & a_ < 0)
        {
            max = a_;
            idx = i;
        }
        ++i;
    });
    t_arr[idx] = 0;
 
    std::for_each(t_arr.begin(), t_arr.end(), [](int a_)
    {
        std::cout << a_ << ' ';
    });
 
    return 0;
}
Цитата Сообщение от stuzer Посмотреть сообщение
3 Найти произведение угловых элементов матрицы.
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 <iostream>
#include <algorithm>
#include <vector>
#include <iomanip>
 
typedef std::vector<int>        T_arr;
typedef std::vector<T_arr>      T_matr;
 
int main()
{
    const size_t   r = 3,
                   c = 3;
    T_matr   matr;
    T_arr    tmp;
 
    matr.resize(r);
    std::generate(matr.begin(), matr.end(), [&tmp]() -> T_arr
    {
        tmp.clear();
        tmp.resize(c);
        int a_;
        std::generate(tmp.begin(), tmp.end(), [&a_]() -> int
        {
            std::cout << "\nMatr[x][x] -> ";
            std::cin >> a_;
            return a_;
        });
        return tmp;
    });
 
    std::cout << "\n\nMatrix: \n";
    std::for_each(matr.begin(), matr.end(), [](T_arr &a_)
    {
        std::for_each(a_.begin(), a_.end(), [](int b_)
        {
            std::cout << std::setw(3) << b_ << ' ';
        });
        std::cout << '\n';
    });
 
    int res = matr[0][0] * matr[0][c - 1] * matr[r - 1][c - 1] * matr[r - 1][0];
    std::cout << "\n\nResult: " << res << std::endl;
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.01.2011, 19:44
Привет! Вот еще темы с ответами:

Создать главное меню из 5 cpp файлов.работа в консольке - C++
Есть 5 рабочих программ-файлов на различные тематики. Их нужно поместить в одну главную програмку с меню,для того чтоб выбирать какую...

Библиотеки в CPP. Ошибка компиляции | CPP - C++
Доброго вечера! Появился один вопросик недавно. Начал юзать библиотеку &lt;windows.h&gt; для использования такой команды как &quot;system&quot; в коде....

Подключение файлов main.cpp some.cpp some.h - C++
Всем привет, программа разделенна на три файла poly.cpp main.cpp poly.h Кто мог бы объяснить как происходит подключение этих файлов, и как...

C:\tsserver\Projects\cpp\codeblocks\MyComp\compiler\mmz\mmz. cpp|29|error: no match for 'operator=' in '* Item = * Source'| - C++
char **Source; TArray&lt;std::string&gt; *Item; ... *Item=*Source;


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

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

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