0 / 0 / 0
Регистрация: 16.02.2015
Сообщений: 14
1

Получить последовательность, которая отличается от исходной тем, что все нечетные члены удвоены

30.03.2015, 12:27. Показов 2897. Ответов 8
Метки нет (Все метки)

Здравствуйте. Плохо разбираюсь в шарпе, помогите, пожалуйста, решить пару задач на последовательности и массивы.

1) Даны целые числа a1,…, a50. Получить последовательность b1,..., b50, которая отличается от исходной тем, что все нечетные члены удвоены.

2) Дана матрица размером MxN. Найти сумму элементов каждого столбца.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.03.2015, 12:27
Ответы с готовыми решениями:

Получить последовательность, в которой все члены исходной удвоены
Добрые люди как?

Получить последовательность, которая отличается от исходной тем, что все нечетные элементы удвоены
a = -100, b = 107 1) Дана последовательность действительных чисел А1, …, А50. Получить...

Получить последовательность, которая отличается от исходной тем, что все нечетные элементы удвоены
Даны натуральное число N и последовательность A1, A2, ... An, состоящая из N целых чисел. Получить...

Получить последовательность ,которая отличается от исходной тем , что все нечетные элементы удвоены
Даны натуральное N и последовательность A 1,A 2,…,A N , состоящая из N целых чисел. Получить...

8
97 / 90 / 61
Регистрация: 20.10.2013
Сообщений: 298
30.03.2015, 13:01 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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
int[] a = new int[50];
            Random r = new Random();
            Console.WriteLine("Введите 1 если хотите заполнить массив случайными числами");
                int n = Convert.ToInt32(Console.ReadLine()); 
                if (n == 1)
                {
                    for (int i = 1; i <= a.Length; i++)
                    {
                        a[i] = r.Next(-10, 10);
                    }
                }
                else
                {
                    for (int i = 1; i <= a.Length; i++)
                    {
                       
                        a[i] = Convert.ToInt32(Console.ReadLine());
                      
                    }
                }              
                Console.WriteLine("Исходный массив");
                for (int i = 1; i <= a.Length; i++)
                {
 
                    Console.WriteLine("a[{0}]={1}", i, a[i]);
                }
                Console.WriteLine("Новвый массив");
                int[] b = new int[50];
                for (int i = 0; i <= b.Length; i++)
                {
                    if (a[i] % 2 != 0)
                    {
                        b[i] = a[i] * 2;
                    }
                    else
                    {
                        b[i] = a[i];
                    }
                    Console.WriteLine("b[{0}]={1}", i, b[i]);
                }
Добавлено через 13 минут
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
Console.Write("К-ство строк:");
            int m = Convert.ToInt32(Console.ReadLine());
            Console.Write("К-ство столбцов:");
            int n = Convert.ToInt32(Console.ReadLine());
            int[,] a = new int[m,n];
            Random r = new Random();
            for (int i = 0; i < m; i++)
            {
                Console.WriteLine();
                for (int j = 0; j < n; j++)
                {
                    a[i, j] = r.Next(-10, 10);
                    Console.Write("a[{0}]={1}\t", i, a[i, j]);
                }
 
            }
            Console.WriteLine();
            for (int j = 0; j < n;j++)
            {
                int s = 0;
                for (int i = 0; i < m; i++)
                {
                    s = s + a[i, j];
                }
                Console.WriteLine("{0} столбец сумма равна {1}", j, s);
            }
1
0 / 0 / 0
Регистрация: 16.02.2015
Сообщений: 14
30.03.2015, 15:06  [ТС] 3
Спасибо, magnusmax! Буду разбираться.

Добавлено через 41 минуту
C#
1
a[i] = r.Next(-10, 10);
Этот индекс находится вне границ массива? Как это исправить?

Добавлено через 9 минут
Точнее при вводе "1" всплывает окно с уведомлением о том, что индекс находился вне границ массива.
0
484 / 439 / 123
Регистрация: 05.01.2010
Сообщений: 1,848
30.03.2015, 15:07 4
Цитата Сообщение от Illuminate Посмотреть сообщение
Этот индекс находится вне границ массива? Как это исправить?
сделать так, чтобы индекс(i) не превышал максимально допустимый для указанного массива(a) с учетом того, что отсчет начинается с нуля
0
840 / 498 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
30.03.2015, 15:16 5
Цитата Сообщение от Illuminate Посмотреть сообщение
Даны целые числа a1,…, a50. Получить последовательность b1,..., b50, которая отличается от исходной тем, что все нечетные члены удвоены.
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
using System;
 
namespace Application
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            int[] a = new int[50];
            int[] b = new int[50];
            Random gen = new Random ();
            for (int i = 0; i < a.Length; i++) 
            {
                a [i] = gen.Next (1, 30);
                Console.Write (a [i] + " ");
                b [i] = a [i];
                if (a [i] % 2 == 1)
                    b [i] *= 2;
            }
            Console.WriteLine ("\nArray B");
            foreach (int item in b)
                Console.Write (item + " ");
            Console.WriteLine ();
        }
    }
}
Цитата Сообщение от Illuminate Посмотреть сообщение
Дана матрица размером MxN. Найти сумму элементов каждого столбца.
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
using System;
 
namespace Application
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            int M = 3, N = 4;
            int[,] A = new int[M, N];
            Random gen = new Random ();
            for (int i = 0; i < M; i++) 
            {
                for (int j = 0; j < N; j++) 
                {
                    A [i, j] = gen.Next (1, 15);
                    Console.Write ("{0,4}", A [i, j]);
                }
                Console.WriteLine ();
            }
            for (int j = 0; j < N; j++) 
            {
                int sum = 0;
                for (int i = 0; i < M; i++)
                    sum += A [i, j];
                Console.WriteLine ("Column with index {0} : {1}", j, sum);
            }
        }
    }
}
Добавлено через 4 минуты
Цитата Сообщение от magnusmax Посмотреть сообщение
for (int i = 1; i <= a.Length; i++)
Здесь i выходит за границы. И в шарпе индексация с нуля начинается.
Так надо было писать
C#
1
2
for (int i = 0; i < a.Length; i++)
    //...
Остальные циклы также переписать надо
0
0 / 0 / 0
Регистрация: 16.02.2015
Сообщений: 14
31.03.2015, 12:54  [ТС] 6
C#
1
if (a[i] % 2 != 0)
Эта строка задает элементы второго массива? Остаток от деления элемента первого массива на два должен равняться нулю? Просто у меня абсолютно случайные элементы удваиваются во втором массиве, не могу понять.
0
484 / 439 / 123
Регистрация: 05.01.2010
Сообщений: 1,848
31.03.2015, 13:10 7
Цитата Сообщение от Illuminate Посмотреть сообщение
Эта строка задает элементы второго массива? Остаток от деления элемента первого массива на два должен равняться нулю? Просто у меня абсолютно случайные элементы удваиваются во втором массиве, не могу понять.
вот после такого единственный уместный смайл - это
эта строка проверяет элемент массива(какого, сами думаю знаете) на четность
0
Master of Orion
Эксперт .NET
6094 / 4950 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
31.03.2015, 13:20 8
Лучший ответ Сообщение было отмечено Illuminate как решение

Решение

Illuminate,
C#
1
2
3
4
            int[] a = Enumerable.Range(1, 50).ToArray();
            Console.WriteLine(string.Join(" ", a));
            var b = a.Select(i => i + i%2*i);
            Console.WriteLine(string.Join(" ", b));
1
0 / 0 / 0
Регистрация: 16.02.2015
Сообщений: 14
31.03.2015, 19:58  [ТС] 9
Спасибо, Psilon!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.03.2015, 19:58
Помогаю со студенческими работами здесь

Массив: Получить последовательность В(10), которая отличается от исходной тем, что все нечетные элементы удвоены.
Дан массив А(10). Необходимо получить последовательность В(10), которая отличается от исходной тем,...

Получить последовательность b1, …, bn, которая отличается от a1, …, an тем, что все нечетные члены исходной
Даны целые числа a1, …, an. Получить последовательность b1, …, bn, которая отличается от a1,...

Получить последовательность которая отличается от исходной тем, что все нечетные числа удвоенны
Доброго времени суток! Прошу помощи в решении этой задачи. Задача такова: Дано целое число...

Получить массив В, который отличается от исходного тем, что все нечетные элементы удвоены
Дан массив А из n действительных чисел: a1, …, an. Вычислить: a1, -a1a2, a1a2a3, …,...

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

Получить последовательность, где все нечетные члены удвоены
Даны целые числе a1,...,a50. Получить последовательность b1,...,b50, что отличается от исходной...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru