Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 12.03.2020
Сообщений: 6
1

Выяснить, все ли согласные буквы слова Х, стоящие на четных местах, различны

12.03.2020, 20:15. Просмотров 964. Ответов 7
Метки нет (Все метки)

Ошибся в заголовке не согласные, а все. Помогите, пожалуйста! Заранее спасибо, если не сложно с пояснениями
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.03.2020, 20:15
Ответы с готовыми решениями:

Выяснить, все ли буквы слова Х, стоящие на нечетных местах, различны
Задание 2 Выяснить, все ли буквы слова Х, стоящие на нечетных местах, различны. (помогите с...

Вычеркните из слова Х все буквы, стоящие на четных местах
Вычеркните из слова Х все буквы, стоящие на четных местах string n,...

Дано предложение. Вывести столбиком все его буквы "и", стоящие на четных местах
Дано предложение. Вывести столбиком все его буквы "и", стоящие на четных местах.

Удалить из строки буквы, стоящие на четных местах
Удалить из строки буквы, стоящие на четных местах.

7
1765 / 1121 / 487
Регистрация: 14.10.2018
Сообщений: 3,055
12.03.2020, 20:59 2
Лучший ответ Сообщение было отмечено dima1t как решение

Решение

dima1t, учитывайте 2 момента
1) большие и маленькие буквы - это разные символы
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
34
35
36
37
38
39
40
using System;
 
class Program
{
    static void Main()
    {
        string str = "Парадокс"; // само слово
        bool same = false; // true - в слове есть одинаковые буквы, стоящие на четных индексах
                           // false - буквы в данном случаи разные
                           // по умолчанию ставим false
 
 
        // Перебираем слово в цикле, но не как обычно,
        // а увеличиваем итератор на +2 (ведь нам нужны только четные индексы)
        for (int i = 0; i < str.Length; i += 2)
        {
            // Перебираем в цикле следующие четные индексы и сравниваем их.
            // Если буквы одинаковые, изменяем переменную same на true
            // и делаем выход из 2-ух циклов с помощью goto
            for (int j = i + 2; j < str.Length; j += 2)
            {
                if (str[i] == str[j])
                {
                    same = true;
                    goto next; // переход к метке 'next', которая находится ниже (после циклов)
                }
            }
        }
 
        next: // та самая метка
 
        // Выводи на экран сообщение о том, различны ли буквы или нет
        if (same == true)
            Console.WriteLine("Одинаковые буквы на четных индексах есть");
        else
            Console.WriteLine("Одинаковые буквы на четных индексах отсутствуют");
 
        Console.ReadKey();
    }
}
2
112 / 81 / 36
Регистрация: 15.02.2020
Сообщений: 206
12.03.2020, 21:05 3
dima1t,
Вот простое декларативное решение через Linq
C#
1
2
3
4
5
"sdjfhlskdfhlksdhf" // применение Linq к строке разбивает ее на последовательность букв
.Where((bukva,index)=> index % 2 == 0) // берем только четные буквы
.GroupBy(s=>s) // группируем по символам
.Where(g=>g.Count() > 1) // отбираем только те группы, где количество символов больше 1
.ToArray() // получаем массив с неединичными символами
Если нужно императивное, какое обычно хотят от студента, то надо этот алгоритм(ну или похожий) перевести в циклы.
0
1985 / 1156 / 444
Регистрация: 20.12.2014
Сообщений: 3,087
12.03.2020, 21:06 4
Цитата Сообщение от Enifan Посмотреть сообщение
что такое четные места в вашем понимании - я не знаю. В языке C# есть термин - индекс
В отличие от c# в обычной бренной жизни индексация идет от 1, а не от 0, поэтому четные места или четные буквы - это обычно 2-я, 4-я и т. д., так что, скорее всего, в задании имеются ввиду нечетные индексы, хотя, возможно, я и ошибаюсь.
0
1765 / 1121 / 487
Регистрация: 14.10.2018
Сообщений: 3,055
12.03.2020, 21:18 5
Цитата Сообщение от chumich Посмотреть сообщение
В отличие от c# в обычной бренной жизни индексация идет от 1, а не от 0
та это понятно, но студента учат программировать, и есть вероятность что его будут приучать к 0. Но это уже вопрос к преподу, я студента предупредил.
Да и по факту, если нужно с 1 а не с 0, то в коде переделать только одну цифру и готово.
0
0 / 0 / 0
Регистрация: 12.03.2020
Сообщений: 6
12.03.2020, 21:29  [ТС] 6
Enifan, Спасибо огромное! Какую лучше книгу по c# изучить подскажите, пожалуйста, если не сложно?
0
1765 / 1121 / 487
Регистрация: 14.10.2018
Сообщений: 3,055
12.03.2020, 21:37 7
Цитата Сообщение от dima1t Посмотреть сообщение
Какую лучше книгу по c# изучить
я за Шилдта, она есть в списке Литература по C# для начинающих и не только
Про данную книгу негативных отзывов не слышал (хотя есть некоторые сомнительные моменты в книге), но тут на вкус и цвет

PS Если преподу нужен не четный индекс, а четная буква, то на 15-ой строке кода переделать только одно число. Ну и комментарии поправить
C#
1
for (int i = 1; i < str.Length; i += 2)
0
1985 / 1156 / 444
Регистрация: 20.12.2014
Сообщений: 3,087
12.03.2020, 22:11 8
Цитата Сообщение от Enifan Посмотреть сообщение
это уже вопрос к преподу
Согласен.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.03.2020, 22:11

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

Удалить все элементы, стоящие на четных местах
Дан массив А из n элементов. Получите новый массив, удалив из исходного элементы стоящие на четных...

Все согласные буквы, стоящие между гласными, сделать маленькими
Люди помогите с задачкой. Ни как не пойму как реаизовать это в коде - Все согласные буквы,...

Удалить из строки все буквы 'о', стоящие на нечетных местах
Дана строка символов. Удалить из нее все буквы &quot;о&quot;, стоящие на нечетных местах.

Все буквы стоящие на нечетных местах, перевести в верхний регистр
Дано слово ( нужно ввести во время выполнения программы), все буквы стоящие на нечетных местах,...


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

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

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