Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Строки - индексаторы и свойства 
:(
    Опции темы
ArniLand
Дата 11.4.2010, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 17.8.2008

Репутация: нет
Всего: нет



Набросал примерный код в программе по данному заданию по "индекстаторам и свойствам" и не знаю как реализовать некоторые моменты в программе. Просьба помочь в выполнение программы задания.
Задание:
Цитата

Класс инкапсулирует одномерный массив из элементов символьного типа. Создать индексатор, который предотвращает нарушение границы массива и возвращает символ лишь в верхнем регистре. Создать свойство, доступное для чтения закрытого элемента - данного, что содержит количество гласных букв в массиве. Результат выполнение вывести на экран. В program.cs реализовать сам вывод на экран.


1. Подскажите как реализовать чтобы символ возвращался лишь в верхнем регистре? По возможности покажите пожалуйста пример на коде.
2. Нужно создать свойство которое будет количество гласных букв в массиве. Как создать само свойство это понятно, но не понятно мне как реализовать чтобы оно содержало лишь количество гласных букв в массиве. Покажите пожалуйста тоже этот момент на коде.

Код, того что я попытался написать
Код

//Row.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace laba_index
{
    class Row
    {   
        public int Length;
        public int errflag;
        char[] charray = {'A', 'c', 'R', 'e', 't'};
        string str = new string(charray);

        public Row(string str)
        {
            this.str = str;
        }

        public char this[int i]//здесь реализовал лишь предотвращения выхода за пределы границ, как реализовать с этим возврат символа в верхнем регистре не понятно
        {
            get
            {
                if(ok(i)
                {
                    errflag = false;
                    return str[i];
                }
            }
            set
            {
                str[i] = value;
            }
        }

        public char Vowel// здесь хочу реализовать свойство, доступное для чтения закрытого элемента - данного, что содержит количество гласных букв в массиве, но пока не понятно как
        {   
            get
            {
            }
        }
    }
}


        
    




Это сообщение отредактировал(а) ArniLand - 11.4.2010, 15:29
PM MAIL   Вверх
Heinzz
Дата 11.4.2010, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 12.12.2008
Где: .net

Репутация: 3
Всего: 9



Цитата(ArniLand @  11.4.2010,  15:22 Найти цитируемый пост)

1. Подскажите как реализовать чтобы символ возвращался лишь в верхнем регистре? По возможности покажите пожалуйста пример на коде.
2. Нужно создать свойство которое будет количество гласных букв в массиве. Как создать само свойство это понятно, но не понятно мне как реализовать чтобы оно содержало лишь количество гласных букв в массиве. Покажите пожалуйста тоже этот момент на коде.

1 - ToUpper()
2 - придется считать


--------------------
user posted image
PM MAIL   Вверх
ArniLand
Дата 11.4.2010, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 17.8.2008

Репутация: нет
Всего: нет



Heinzz, можете подсказать как реализовать второе?
PM MAIL   Вверх
Fortnox
Дата 11.4.2010, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 373
Регистрация: 31.10.2008
Где: Ростов-на-Дону

Репутация: 2
Всего: 22



ArniLand, обычный цикл (for, do-while, while, foreach) с подсчетом гласных, например так:
Код

        public int VowelsCount
        {
            get
            {
                int count = 0;
                foreach (char c in charray)
                {
                    switch (char.ToUpper(c))
                    {
                        case 'A': count++; break;
                        case 'E': count++; break;
                        case 'I': count++; break;
                        case 'O': count++; break;
                        case 'U': count++; break;
                        case 'Y': count++; break;
                    }
                }
                return count;
            }
        }

PM MAIL   Вверх
wester
Дата 11.4.2010, 20:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



http://forum.vingrad.ru/forum/topic-297174...y2133550/0.html

это что за репостинги ??

Это сообщение отредактировал(а) wester - 11.4.2010, 20:20
PM MAIL   Вверх
A5uKa
Дата 12.4.2010, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



Код

charrArray.Where(c=>match(c) { | 'A' | 'E' => true | _ => false } );


Just in case

Добавлено через 1 минуту и 25 секунд
Код

match(char.ToUpper(c)) { | 'A' | 'B' => true | _ => false }

PM   Вверх
PashaPash
Дата 12.4.2010, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 9
Всего: 49



ArniLand, 3 топика ради одного вопроса - это как-то слишком. Если совсем не можешь сделать свою лабу - пиши сразу в центр помощи.


--------------------
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0477 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.