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

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

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

с++: массивы, указатели и функции - C++

29.04.2013, 22:53. Просмотров 344. Ответов 1
Метки нет (Все метки)

Приветствую вас программисты, на вас одна надежда..
Не могу разобраться, как изменить..
делаю в code::blocks

Первая и вторая часть задания выполнена в нижеприведенном коде, нужно произвести изменения во второй.
1часть:

1. В диалоговом режиме ввести в строковый массив с именем UIR-151 (или UIR-152) свои фамилию имя, отчество.
2. Вывести размерность полученного массива.
3. Вывести количество букв в фамилии (присвоить полученное значение переменной intF), имени (присвоить значение переменной intN), отчестве (присвоить значение переменной intP).
4. Ввести и вывести на экран два массива по intN целых чисел в каждом.
Результат должен выглядеть примерно так:
ВВЕДИТЕ ФИО: Иванов Иван Иванович
Размер массива UIR-151: 20 (или Размер массива UIR-152: 20 )
Фамилия: 6
Имя: 4
Отчество: 8
Размерность массивов задания студента ИВАНОВА – 4
Первый массив:
1й элемент: 267
2й элемент: 6
3й элемент: 34
4й элемент: 8
Второй массив:
1й элемент: 346
2й элемент: 61
3й элемент: 8
4й элемент: 23
Массив Иванов:
267 6 34 8
Массив Иван:
346 61 8 23



2я часть:
Подсчитать в массивах сумму элементов массива, расположенных до максимального элемента среди (-intP) и (-intF). Вывести эти значения и массив, имеющий наибольшую сумму.



Мне нужно изменить вторую часть на:

Подсчитать в массивах сумму отрицательных элементов массива, попадающих в диапазон [intP*(-1);intF*(-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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#include <iostream>
#include <string>
using namespace std;
 
int main(){
 
 
setlocale(0, "");
 
int intF, intN, intP, UIRLength;
string UIR152;
//Первое задание
cout << "vvedite FIO";
getline(cin, UIR152);
cout << "razmer massiva UIR-152: " << UIR152.length() << endl;
 
intF = UIR152.find_first_of(" ");
intN = UIR152.find_first_of(" ", intF+1) - (intF+1);
intP = UIR152.length()-(intN+1)-(intF+1);
 
cout << "Familia: " << intF << endl;
cout << "Imya: " << intN << endl;
cout << "Ot4estvo: " << intP << endl;
 
int* arr1 = new int[intN];
int* arr2 = new int[intN];
 
cout << "Pervyj massiv:" << endl;
for(int i=1; i<=intN; i++){
cout << i << "Element: " ;
cin >> arr1[i];
cout << endl;
}
 
cout << "Vtoroj massiv:" << endl;
for(int i=1; i<=intN; i++){
cout << i << " element: " ;
cin >> arr2[i];
cout << endl;
}
 
cout << "Vyvod massivov" << endl;
cout << "Vyvodim pervyj massiv:" << endl;
for(int i=1; i<=intN; i++){
cout << arr1[i] << " ";
}
cout << endl;
cout << "Vyvodim vtoroj massiv:" << endl;
for(int i=1; i<=intN; i++){
cout << arr2[i] << " ";
}
cout << endl;
 
//Второе задание
int value = (intP+intF)*(-1);
int sum1, sum2;
sum1 = 0;
sum2 = 0;
for(int j=intN; j>=1; j--){
if (arr1[j]==value) {
for(int i=1; i!=j; i++)
sum1 = sum1+arr1[i];
break;
}
else {
for(int i=1; i<=intN; i++)
sum1 = sum1+arr1[i];
break;
}
}
for(int j=intN; j>=1; j--){
if (arr2[j]==value) {
for(int i=1; i!=j; i++)
sum2 = sum2+arr2[i];
break;
}
else {
for(int i=1; i<=intN; i++)
sum2 = sum2+arr2[i];
break;
}
}
cout << "rezultaty summy:" << endl;
cout << "1j massiv: " << sum1 << endl;
cout << "2j massiv: " << sum2 << endl;
cout << "Vyvodim massiv s naibolshej summoj:" << endl;
if (sum1<sum2)
for(int i=1; i<=intN; i++)cout << arr2[i] << " ";
else for(int i=1; i<=intN; i++)cout << arr1[i] << " ";
cout << endl;
 
return 0;}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.04.2013, 22:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос с++: массивы, указатели и функции (C++):

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц) - C++
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник местонахождением соответствующего элемента aij (см....

Указатели и массивы. Указатели и функции - C++
Никак не разберусь с указателями на функцию. Пишу в Visual Studio. Надо написать функцию Compress() с использованием указателей, которая...

Указатели на массивы. Указатели и функции - C++
Вот задача: Даны два массива : А и B. Необходимо создать третий массив, в котором нужно собрать: -Элементы обоих массивов; -Общие...

C++. Массивы и указатели/ Функции. - C++
Помогите, пожалуйста, решить!!! Я знаю, что это просто. Но я только начинаю изучать C. И до меня никак не доходит! №1. Написать два...

указатели.функции.массивы. - C++
помогите решить в с++ Array75. Дан массив размера N. Переставить в обратном порядке элементы массива, расположенные между его...

Указатели: функции, двумерные массивы - C++
мне нужно вернуть из функции getArray двумерный построенный массив в функцию main, для передачи следующей функции (ещё не написана). ...

1
Lina_ya
0 / 0 / 0
Регистрация: 21.12.2012
Сообщений: 4
01.05.2013, 22:28  [ТС] #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
// Второе задание
 
int sum1, sum2;
sum1 = 0;
sum2 = 0;
for(int i = 0; i < intN; i++)
 {
if (arr1[i]>=-intP && arr1[i]<=-intF) sum1 += arr1[i];
}
for(int i = 0; i < intN; i++)
 {
if (arr2[i]>=-intP && arr2[i]<=-intF) sum2 += arr2[i];
}
cout << "Summy: " << endl;
cout << "1 massiv: " << sum1 << endl;
cout << "2 massiv: " << sum2 << endl;
cout << "Massiv s naibolshej summoj: " << endl;
if (sum1<sum2)
for(int i=1; i<=intN; i++)
cout << arr2[i] << " ";
else for(int i=1; i<=intN; i++)
cout << arr1[i] << " ";
cout << endl;
return 0;}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.05.2013, 22:28
Привет! Вот еще темы с ответами:

Почему не обнуляются элементы массива? (функции, массивы, указатели) - C++
Собственно сам код. его действия: В главной функции tmain выполняется функция innfunc, а функция innfunc вызывает функцию innfunc1. ...

Указатели и массивы. Внедрение функции в прогу. C++. Пожалуйста, помогите. - C++
Условие задачи: /* Calculate the length of a string */ #include &lt;stdio.h&gt; #define MAXLINE 30 // String lenght...

Написать код используя массивы, указатели, виртуальные функции, наследование, классы и т.д - C++
Короче нужно сделать код, программу которая будет использовать массивы, указатели, виртуальные функции, наследование, классы, конструкторы,...

Отсортировать массив и вывести на экран (массивы и указатели на указатели) - C++
Даны массивы F-фамилий студентов и S-результаты сессии (5 оценок) , причем s- результат сессии F студента. Отсортировать массив S по...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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