Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.68/28: Рейтинг темы: голосов - 28, средняя оценка - 4.68
Hope1
0 / 0 / 0
Регистрация: 05.06.2014
Сообщений: 1
1

В одномерном массиве, состоящем из n вещественных элементов вычислить минимальный элемент массива

05.06.2014, 15:07. Просмотров 5102. Ответов 3
Метки нет (Все метки)

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

Помогите решить, срочно сдать работу нужно.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2014, 15:07
Ответы с готовыми решениями:

В одномерном массиве, состоящем из n вещественных элементов, вычислить: максимальный элемент массива;
Помогите пожалуйста. С# В одномерном массиве, состоящем из n вещественных...

В одномерном массиве, состоящем из n вещественных элементов, вычислить сумму отрицательных элементов массива
Помогите решить задачи! 1)В одномерном массиве, состоящем из n вещественных...

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

В одномерном массиве, состоящем из N вещественных элементов, вычислить
1...Составить программу, позволяющую в одномерном массиве, состоящем из N...

В одномерном массиве, состоящем из и вещественных элементов, вычислить
В одномерном массиве, состоящем из и вещественных элементов, вычислить: •...

3
sk007
Life Builder
415 / 415 / 341
Регистрация: 12.01.2011
Сообщений: 1,522
Завершенные тесты: 6
05.06.2014, 15:50 2
Цитата Сообщение от Hope1 Посмотреть сообщение
1)минимальный элемент массива
C#
1
2
double[] mass = {0.1, 0.3,0.5,0.22,0.25};
Console.WriteLine("Максимальный элемент массива: {0}", mass.Max());
Добавлено через 11 минут
Можно и циклом найти
C#
1
2
3
4
5
6
double[] mass = {0.1, 0.3,0.5,0.22,0.25};
            double i = mass[0];
 
            foreach (double d in mass) if (d > i) i = d;
 
            Console.WriteLine("Максимальный элемент массива: {0}", i);
1
Not_Jon_Skeet
149 / 141 / 73
Регистрация: 03.03.2014
Сообщений: 368
05.06.2014, 16:01 3
Лучший ответ Сообщение было отмечено Hope1 как решение

Решение

Все задачи:
Кликните здесь для просмотра всего текста

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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace SingleArray
{
    
    class Program
    {
        public static double[] GenerateRandomDoubleArray(int seed, int size)
        {
            Random rand = new Random(seed);
            double[] a = new double[size];
            for (int i = 0; i < size; i++)
                a[i] = Math.Round((rand.Next(-1,2))*rand.NextDouble()*100, 2);
            return a;
        }
 
        public static void PrintArray(double[] a)
        {
            foreach (double d in a)
            {
                Console.Write(d+"   ");
            }
        }
 
        public static double Min(double[] a)
        {
            double min=a[0];
            for (int i = 1; i < a.Length; i++)
            {
                if (a[i] < min) min = a[i];
            }
            return min;
        }
 
        public static double PosElemSum(double[] a)
        {
            double? minElem = null;
            double sum = 0;
            for (int i = 0; i < a.Length; i++)
            {
                if (a[i] > 0 && !minElem.HasValue)
                {
                    minElem = a[i];
                    sum += a[i];
                    continue;
                }
                if (a[i] > 0 && minElem.HasValue) sum += a[i];
            }
            return sum;
        }
        public static void ZerosFirst(double[] a)
        {
            List<int> zeroIndx = new List<int>();
            
            for (int i = 0; i < a.Length; i++)
            {
                if (Math.Abs(a[i]) < double.Epsilon) zeroIndx.Add(i);
            }
 
            for (int i = 0; i < zeroIndx.Count; i++)
            {
                if (i != zeroIndx[i])
                {
                    double temp = a[i];
                    a[i] = a[zeroIndx[i]];
                    a[zeroIndx[i]] = temp;
                }
            }
 
        }
 
        static void Main(string[] args)
        {
            double[] a = GenerateRandomDoubleArray(4, 8);
            PrintArray(a);
            Console.WriteLine();
            Console.WriteLine("Min value = {0}", Min(a));
            Console.WriteLine("Sum of positive elements = {0}", PosElemSum(a));
            Console.WriteLine("Zeros first:");
            ZerosFirst(a);
            PrintArray(a);
            Console.ReadLine();
        }
    }
}
1
kolas1173
4 / 4 / 4
Регистрация: 21.12.2014
Сообщений: 113
22.10.2015, 13:01 4
Вот тут более понятнее расписано.
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication2
{
    class Program
    {
      static void Main(string[] args)
        {
            double result = 0;
            Random r = new Random();
            Console.Write("Размер массива N = ");
            int n = int.Parse(Console.ReadLine());
          /*  int[] array = new int[n];*/
            double[] array = new double[n];
            int min = 0;
          
 
            for (int i = 0; i < array.Length; i++)
            {
                /*array[i] = r.Next(-10, 10);*/
                array[i] = (Math.Round((r.NextDouble() - 0.5) * 100)) / 10;
                Console.Write(array[i] + "  ");
                if (array[min] > array[i])
                    min = i;
              
            }
            Console.WriteLine();
            Console.WriteLine();
            Console.WriteLine("Минимальный элемент = {0}", array[min]);
            int first = -1, last = -1;
            for (int i = 0; i < array.Length; i++)
            {
                if (array[i] > 0)
                {
                    first = i;
                    break;
                }
            }
            if (first == -1)
            {
                Console.WriteLine("\nВ массиве нет положительных элементов");
                Console.ReadKey();
                return;
            }
            for (int i = array.Length - 1; i >= 0; i--)
            {
                if (array[i] > 0)
                {
                    last = i;
                    break;
                }
            }
            if (first == last)
            {
                Console.WriteLine("\nВ массиве только один положительный элемент");
                Console.ReadKey();
                return;
            }
            for (int i = first + 1; i < last; i++)
            {
                result += array[i];
            }
            Console.WriteLine("\nСумма элементов, между первым и последним: " + result);
            for (int i = 0, j = 0; i < array.Length; i++)
                if (array[i] <= 1)
                    if (array[i] >= 0)
                {
                    double temp = array[i];
                    array[i] = array[j];
                    array[j] = temp;
                    j++;
                }
            Console.WriteLine();
            Console.WriteLine("Преобразованный массив(сначала нулевые, потом все остальные):");
            for (int i = 0; i < array.Length; i++)
                Console.Write("{0}  ", array[i]);
            Console.WriteLine();
            Console.ReadLine();
        }
    }
}
Добавлено через 5 минут
Вот тут расписал.
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
Вот тут более понятнее расписано. 
[CSHARP]using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication2
{
    class Program
    {
      static void Main(string[] args)
        {
            double result = 0; /// int result = 0; для целочисленных чисел
            Random r = new Random();
            Console.Write("Размер массива N = ");
            int n = int.Parse(Console.ReadLine());
          /*  int[] array = new int[n];*////// целочисленный массив
            double[] array = new double[n];
            int min = 0;
          
 
            for (int i = 0; i < array.Length; i++)
            {
                /*array[i] = r.Next(-10, 10);*////рандом от -10 до 10 целочисленный
                array[i] = (Math.Round((r.NextDouble() - 0.5) * 100)) / 10;
                Console.Write(array[i] + "  ");
                if (array[min] > array[i])
                    min = i;
              
            }
            Console.WriteLine();
            Console.WriteLine();
            Console.WriteLine("Минимальный элемент = {0}", array[min]);
            int first = -1, last = -1;
            for (int i = 0; i < array.Length; i++)
            {
                if (array[i] > 0)
                {
                    first = i;
                    break;
                }
            }
            if (first == -1)
            {
                Console.WriteLine("\nВ массиве нет положительных элементов");
                Console.ReadKey();
                return;
            }
            for (int i = array.Length - 1; i >= 0; i--)
            {
                if (array[i] > 0)
                {
                    last = i;
                    break;
                }
            }
            if (first == last)
            {
                Console.WriteLine("\nВ массиве только один положительный элемент");
                Console.ReadKey();
                return;
            }
            for (int i = first + 1; i < last; i++)
            {
                result += array[i];
            }
            Console.WriteLine("\nСумма элементов, между первым и последним: " + result);
            for (int i = 0, j = 0; i < array.Length; i++)
                if (array[i] < 1)
                    if (array[i] >= 0)
                {
                    double temp = array[i];///int temp = array[i];///для целочисленных
                    array[i] = array[j];
                    array[j] = temp;
                    j++;
                }
            Console.WriteLine();
            Console.WriteLine("Преобразованный массив(сначала нулевые, потом все остальные):");
            for (int i = 0; i < array.Length; i++)
                Console.Write("{0}  ", array[i]);
            Console.WriteLine();
            Console.ReadLine();
        }
    }
}
[/CSHARP]
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2015, 13:01

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

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

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


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

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

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