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

Получить сумму тех членов последовательности, которые нечетны и отрицательны - C++

Восстановить пароль Регистрация
 
Realz
0 / 0 / 0
Регистрация: 16.09.2012
Сообщений: 12
16.09.2012, 15:07     Получить сумму тех членов последовательности, которые нечетны и отрицательны #1
Даны натуральное n, целые числа a1, …, an. Получить сумму тех членов последовательности a1, …, an , которые нечетны и отрицательны.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.09.2012, 15:07     Получить сумму тех членов последовательности, которые нечетны и отрицательны
Посмотрите здесь:

C++ Получить сумму тех чисел данной последовательности, которые кратны 5
Получить сумму тех чисел последовательности, которые нечётны и отрицательны C++
C++ Циклы: Получить сумму первых n членов последовательности
Получить сумму положительных и сумму отрицательных членов этой последовательности C++
C++ В последовательности получить сумму всех членов
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
16.09.2012, 15:11     Получить сумму тех членов последовательности, которые нечетны и отрицательны #2
C++
1
2
3
4
5
6
7
8
int summa = 0; //В этой переменной сумма
for(int i = 0; i < n; i++)
{
    if((arr[i] % 2 != 0) && (arr[i] < 0))//arr - массив чисел
    {
        sum += arr[i]; 
    }
}
Realz
0 / 0 / 0
Регистрация: 16.09.2012
Сообщений: 12
16.09.2012, 18:25  [ТС]     Получить сумму тех членов последовательности, которые нечетны и отрицательны #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
45
46
47
48
49
50
51
52
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Lab_1
{
    class Program
    {
        static void Main(string[] args)
        {
            byte n;    // число членов последовательности
            double a; // действительная переменная
            double summa; // Сумма переменных
            int count; // счетчик
            Console.Write(" Введите значение n ");
            // чтение строки и  преобразование ее в целое число
            n = byte.Parse(Console.ReadLine());
            summa = 0;
            if (n == 0)
            {
                Console.WriteLine(" значение n должно быть >0 ");
                return;
            }
            Console.Write(" Введите значение a ");
            a = double.Parse(Console.ReadLine());
            count = 1;
            while (count < n)
            {
                Console.Write(" Введите значение a ");
                a = double.Parse(Console.ReadLine());
                
                count++;
            }
            if ((a < 0) && (a % 2 !=0)) // Проверка на отрицательность и нечетность переменной
            {
                summa = summa +a;
                Console.WriteLine(" Сумма переменных = {0} ", summa);
                while (count < n)
                {
                    Console.Write(" Введите значение a ");
                    a = double.Parse(Console.ReadLine());
                
                    count++;
                    summa =summa + a;
                    Console.WriteLine(" Сумма переменных = {0} ", summa );
                }
            }
            Console.ReadKey();
        }
    }
}
Nixy
ComfyMobile
 Аватар для Nixy
399 / 280 / 8
Регистрация: 24.07.2012
Сообщений: 916
16.09.2012, 18:41     Получить сумму тех членов последовательности, которые нечетны и отрицательны #4
Проверка на условия отрицательности и нечетности должны быть внутри цикла
Вообще код очень странный две суммы откудато берутся по заданию должно быть так
C++
1
2
3
4
5
6
7
8
9
10
11
count=1;
summa=0;
while (count < n)
                {
                    Console.Write(" Введите значение a ");
                    a = double.Parse(Console.ReadLine());             
                    if ((a < 0) && (a % 2 !=0))
                      summa =summa + a;                    
                    count++;
                }
Console.WriteLine(" Сумма переменных = {0} ", summa );
И больше не надо ничего
Realz
0 / 0 / 0
Регистрация: 16.09.2012
Сообщений: 12
16.09.2012, 22:01  [ТС]     Получить сумму тех членов последовательности, которые нечетны и отрицательны #5
Я в вашей проге задал типы переменных, задал "n". (Иначе, на C# в VS прога не пашет), т.е. основу проги не изменил и добавил задержку Console.ReadKey(); Ну и там на одну переменную(a) меньше предлагалось вводить. поэтому там либо count=0 присвоить либо count не строга меньше n ставить. Ну я сделал 2-ое как видно по программе
Начал изучать C# неделю назад, поэтому и намудрил в начале)
Спасибо!
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication7
{
    class Program
    {
        static void Main(string[] args)
        {
            int   count;
            byte n;
            double a, summa;
            count = 1;
            summa = 0;
            Console.Write("Введите значение n ");
            n = byte.Parse(Console.ReadLine());
            while (count <= n)
            {
                Console.Write(" Введите значение a ");
                a = double.Parse(Console.ReadLine());
                if ((a < 0) && (a % 2 != 0))
                    summa = summa + a;
                count++;
            }
            Console.WriteLine(" Сумма переменных = {0} ", summa);
            Console.ReadKey();
 
 
        }
    }
}
Nixy
ComfyMobile
 Аватар для Nixy
399 / 280 / 8
Регистрация: 24.07.2012
Сообщений: 916
16.09.2012, 23:12     Получить сумму тех членов последовательности, которые нечетны и отрицательны #6
Цитата Сообщение от Realz Посмотреть сообщение
Я в вашей проге задал типы переменных, задал "n". (Иначе, на C# в VS прога не пашет), т.е. основу проги не изменил и добавил задержку Console.ReadKey(); Ну и там на одну переменную(a) меньше предлагалось вводить. поэтому там либо count=0 присвоить либо count не строга меньше n ставить. Ну я сделал 2-ое как видно по программе
Начал изучать C# неделю назад, поэтому и намудрил в начале)
Спасибо!
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication7
{
    class Program
    {
        static void Main(string[] args)
        {
            int   count;
            byte n;
            double a, summa;
            count = 1;
            summa = 0;
            Console.Write("Введите значение n ");
            n = byte.Parse(Console.ReadLine());
            while (count <= n)
            {
                Console.Write(" Введите значение a ");
                a = double.Parse(Console.ReadLine());
                if ((a < 0) && (a % 2 != 0))
                    summa = summa + a;
                count++;
            }
            Console.WriteLine(" Сумма переменных = {0} ", summa);
            Console.ReadKey();
 
 
        }
    }
}
я нарочно не определил переменные так как указал ток часть кода, так то да
C++
1
2
double summa=0;// определять переменные можно и во время их иницилизации
int count=1; // код менее переполненый получится
Yandex
Объявления
16.09.2012, 23:12     Получить сумму тех членов последовательности, которые нечетны и отрицательны
Ответ Создать тему
Опции темы

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