Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/21: Рейтинг темы: голосов - 21, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 02.04.2012
Сообщений: 7

Вычислить произведение элементов массива с четными номерами

11.04.2012, 22:58. Показов 4120. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, уважаемые!
Имеется задача:
В одномерном массиве, состоящем из n целочисленных элементов вычислить:
1. произведение элементов массива с четными номерами;
2. сумму элементов массива, расположенных между первым и последним нулевыми элементами.
Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом – все отрицательные.(0 – положительный).
И ее код на Паскале:
Pascal
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
uses crt;
const n=10;
var m:array[1..n]of longint;
i,j,c1,c2,p:longint;
 
begin
 clrscr;
 write('Введите массив -> ');
 for i:=1 to n do read(m[i]);
 readln;
 p:=1;
 for i:=1 to n do if mod i mod 2=0 then p:=p*m[i];
 writeln('Произедение элементов с чётными номерами = ',p);
 c1:=1;
 c2:=n;
 while (c1<n) and (m[c1]<>0) do inc(c1);
 while (c2>1) and (m[c2]<>0) do dec(c2);
 p:=0;
 for i:=c1+1 to c2-1 do p:=p+m[i];
 writeln('Сумма элементов между первым и последним нулевыми элементами = ',p);
 for i:=1 to n do for j:=1 to n-1 do
 if (m[j]<0) and (m[j+1]>=0) then
 begin
  p:=m[j];
  m[j]:=m[j+1];
  m[j+1]:=p;
 end;
 writeln('Отсортированный массив');
 for i:=1 to n do write(m[i],' ');
 readln;
end.
Требуется перевести этот код в код C#. Кто осилит? Очень надо...

Благодарю за внимание.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.04.2012, 22:58
Ответы с готовыми решениями:

Вычислить произведение элементов массива с четными номерами
В одномерном массиве, состоящем из n целочисленных элементов, 1. вычислить произведение элементов массива в четными номерами. 2....

Вычислить произведение элементов массива с четными номерами
в одномерном массиве из целочисленных элементов вычислить: 1) произведение элементов массива с четными номерами 2) сумму...

Найти произведение элементов массива с четными номерами
Создать вспомогательный класс , который содержит методы ,что выполняют обработку массива согласно заданию: в одномерном массиве из целых...

3
 Аватар для tofers
30 / 30 / 10
Регистрация: 07.10.2011
Сообщений: 204
11.04.2012, 23:58
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Осилил не все

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
const int n = 10;
            int[] Mass = new int[n];
            for (int i = 0; i < Mass.Length; i++)
            {
                Mass[i] = int.Parse(Console.ReadLine());
            }
            int p = 1;
            for (int i = 0; i < Mass.Length; i++)
            {
                if ((Mass[i] != 0) &&((Mass[i] % 2) == 0))
                    p *= Mass[i];
            }
            Console.WriteLine("Произедение элементов с чётными номерами = " + p);
            int c1 = 0;
            int c2 = n - 1;
            while ((c1 < n) && (Mass[c1] != 0)) c1++;
            while ((c2 > 0) && (Mass[c2] != 0)) c2--;
            p = 0;
            for (int i = c1 + 1; i < c2 - 1; ) p += Mass[i];
            Console.WriteLine("Сумма элементов между первым и последним нулевыми элементами = " + p);
            /// эт не работает 
            for (int j = 0; j < Mass.Length; j++)
                if ((Mass[j] < 0) && (Mass[j + 1] >= 0))
                {
                    p = Mass[j];
                    Mass[j] = Mass[j + 1];
                    Mass[j + 1] = p;
                }
 
            Console.WriteLine("Отсортированный массив");
            for (int i = 0; i < Mass.Length; i++) Console.Write(Mass[i] + " ");
            Console.ReadKey();
1
 Аватар для Петррр
6721 / 3570 / 900
Регистрация: 28.10.2010
Сообщений: 5,937
12.04.2012, 00:02
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
using System;
 
 
class MainClass
{
    static void Swap<T>(ref T val1, ref T val2)
    {
        T buf = val1;
        val1 = val2;
        val2 = buf;
    }
    public static void Main (string[] args)
    {
        Console.Clear();
        const int n = 10;
        int[] array = new int[n];
        for(int i = 0; i < array.Length; i++)
        {
            Console.Write(">");
            array[i] = int.Parse(Console.ReadLine());
        }
        // Произведение элементов с четными номерами
        int prod = 1;
        for(int i = 0; i < array.Length; prod *= array[i], i = i + 2)
            ;
        Console.WriteLine("Произведение: {0}", prod);
        int first_zero = Array.IndexOf(array, 0);
        int last_zeto = Array.LastIndexOf(array, 0);
        if (first_zero != -1 && (first_zero != last_zeto))
        {
            int sum = 0;
            for(int i = first_zero + 1; i < last_zeto; sum += array[i], i++)
                ;
            Console.WriteLine("Сумма между первым и последним нулем: {0}", sum);
        }
 
        int first = 0;
        int last = array.Length;
        while (true)
        {
            while (first != last && array[first] >= 0)
                first++;
            if (first == last--)
                break;
            while (first != last && ! (array[last] >= 0))
                --last;
            if (first == last)
                break;
            Swap(ref array[first++], ref array[last]);
        }
        Console.WriteLine("Отсортированный массив: ");
        for(int i = 0; i < array.Length; i++)
            Console.Write(array[i] + " ");
    }
}
1
0 / 0 / 0
Регистрация: 02.04.2012
Сообщений: 7
12.04.2012, 00:26  [ТС]
Мужики, спасибо огромное тем, кто откликнулся!

Приятно осознавать, что есть еще отзывчивые люди, которые готовы прийти на помощь неопытным новичкам вроде меня.

Еще раз спасибо, ребята!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.04.2012, 00:26
Помогаю со студенческими работами здесь

Найти произведение элементов массива с четными номерами, сумму элементов и преобразовать массив
В одномерном массиве, состоящем из n целых элементов, вычислить: 1) произведение элементов массива с четными номерами; 2) сумму...

Найти произведение элементов массива с четными номерами, элементы заменить суммой всех предыдущих
Дан вектор размерности N. 1. Найти произведение элементов с четными номерами. 2. Все элементы, кроме первого, заменить суммой всех...

Вычислить произведение элементов массива с четными индексами. Использовать методы класса Array
Помогите с решением задачки. В одномерном массиве, состоящем из n действительных элементов, вычислить произведение элементов массива с...

Нахождения суммы элементов массива и произведения элементов массива с четными номерами
Здравствуйте, помогите пожалуйста, сделать через оператор foreach и при этом не должно быть больше двух циклов for В одномерном массиве,...

Вычислить произведение элементов массива c четными номерами
В одномерном массиве,состоящем из n вещественных элементов,вычислить: -произведение элементов массива c четными номерами; -сумму...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru