Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
8 / 8 / 4
Регистрация: 11.02.2017
Сообщений: 100
1

Не все ветви кода возвращают значение

03.02.2018, 00:07. Показов 701. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите где косяк. Нужен метод который берет каждый элемент массива и ищет повторяется ли он среди оставшихся значений массива и записывает индексы дубликатов в список.
На данный момент мое представление следующее

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
static List<int> TestMeth(string[] FirstArray)
        {
            List<int> indexes = new List<int>();
 
            for (int i = 0; i < FirstArray.Length; i++)
            {
                for (int index = 0; ; index += FirstArray.Length)
                {
                    while (index != -1)
                        index = Array.IndexOf(FirstArray, FirstArray[i], index);
                    if (index == -1)
                    {
                        return indexes;
                    }
                    indexes.Add(index);
                    return indexes;
                }      
            }
        }
студия ругается что не все ветви возвращаются значение и имеется недостижимый код... сижу уже час как баран на новые ворота смотрю и не понимаю что не так. Подскажите где косяк

Код стырил со стековерфлоу, но там он был по поиску индексов повторяющихся символов в строке
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.02.2018, 00:07
Ответы с готовыми решениями:

Не все ветви кода возвращают значение
int centuryFromYear(int year) { if(year&gt;=1&amp;&amp;year&lt;=2005) { int centry; ...

Не все ветви кода возвращают значение
using System; using System.Linq; using System.Text; namespace RockPaperScissors { ...

Не все ветви кода возвращают значение
В данной функции возникает ошибка: &quot;не все ветви кода возвращают значение &quot;, подскажите что не так?...

Не все ветви кода возвращают значение
Добрый день. Есть метод в классе: public static string ok() { string auth =...

4
1150 / 742 / 483
Регистрация: 21.01.2014
Сообщений: 1,903
03.02.2018, 00:11 2
Что по вашему вернет метод, если цикл не выполнится ни разу?
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
static List<int> TestMeth(string[] FirstArray)
        {
            List<int> indexes = new List<int>();
 
            for (int i = 0; i < FirstArray.Length; i++)
            {
                for (int index = 0; ; index += FirstArray.Length)
                {
                    while (index != -1)
                        index = Array.IndexOf(FirstArray, FirstArray[i], index);
                    if (index == -1)
                    {
                        return indexes;
                    }
                    indexes.Add(index);
                    return indexes;
                }      
            }
            return indexes;
        }
0
1123 / 794 / 219
Регистрация: 15.08.2010
Сообщений: 2,185
03.02.2018, 00:11 3
Цитата Сообщение от Тапок ярости Посмотреть сообщение
Подскажите где косяк
для начала представь что FirstArray.Length == 0, куда пойдет код и что вернет?
0
8 / 8 / 4
Регистрация: 11.02.2017
Сообщений: 100
03.02.2018, 00:44  [ТС] 4
теперь понял почему, только теперь не понятно как запилить тогда чтобы искал индексы
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
03.02.2018, 00:53 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
using System;
using System.Collections.Generic;
 
namespace Лаба
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            int[] Mas = new int[10] { 1, 2, 3, 5, 1, 1, 5, 7, 2, 8, };
 
            List<int> list = new List<int>();
 
            for (var i=0;i<Mas.Length-1;i++)
            {
                for (var j = i+1; j < Mas.Length; j++)
                {
                    if (Mas[i] == Mas[j]) list.Add(j);
                }
            }
 
            for (var i = 0; i < list.Count; i++) Console.WriteLine(list[i]);
 
            Console.ReadKey();
        }
 
    }
}
0
03.02.2018, 00:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.02.2018, 00:53
Помогаю со студенческими работами здесь

Не все ветви кода возвращают значение
public int ttyty(int a3, int b3, int c3) { double d3 = b3 * b3 - 4 * a3 *...

Не все ветви кода возвращают значение
public string GetWithdraw(string email) { string pattern =...

Не все ветви кода возвращают значение
Помогите исправить ошибки, или подкиньте идеи как ещё можно выполнить задание. Мне нужно было...

Не все ветви кода возвращают значение
В методе Answer не все ветви кода возвращают значение, хотя return в конце есть ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru