Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Microsoft .NET

  Все выпуски  

RFpro.ru: Microsoft .NET


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты данной рассылки

Гаряка Асмик
Статус: Профессор
Рейтинг: 5196
∙ повысить рейтинг »
Micren
Статус: Профессионал
Рейтинг: 1612
∙ повысить рейтинг »
Andrew Kovalchuk
Статус: Профессионал
Рейтинг: 607
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Программирование / Microsoft .NET : C#

Номер выпуска:191
Дата выхода:12.11.2010, 13:30
Администратор рассылки:Alexey G. Gladenyuk (Управляющий)
Подписчиков / экспертов:170 / 57
Вопросов / ответов:1 / 1

Вопрос № 180598: Здравствуйте, уважаемые эксперты! Помоги, пожалуйста, решить задачу: Разработать консольную программу на языке C# (Предусмотреть меню, позволяющее проверить все методы класса): Составить описание класса для определения одномерных массив...



Вопрос № 180598:

Здравствуйте, уважаемые эксперты! Помоги, пожалуйста, решить задачу:

Разработать консольную программу на языке C# (Предусмотреть меню, позволяющее проверить все методы класса):

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

Заранее спасибо за ответ!

Отправлен: 07.11.2010, 13:16
Вопрос задал: verona (2-й класс)
Всего ответов: 1
Страница вопроса »


Отвечает Челноков Виктор Альбертович (Студент) :
Здравствуйте, verona!
Посмотрите это вариант
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Globalization;

namespace массив
{
class Program

{
static string ss;
static int i=0;
static int[] mass1;
static int[] mass2;
static string f = "";
static void Main(string[] args)
{
menu();
Readline( Console.ReadLine());

}

static void Readline(string s)
{
switch (s)
{
case "1":
new_mass();
break ;
case "2":
print_elem();
break ;
case "3":
print_mass();
break ;
case "4":
mass_um_skal();
break ;
case "5":
mass_del_skal();
break ;
case "6":
new_2_mass();
break ;
case "7":
mass_2_plus();
break ;
case "8":
mass_2_minus();
break ;
case "9":
menu();
Readline(Console.ReadLine());
break ;



}

}
static void menu()
{
Console.WriteLine("1- создание массива указанной размерности");
Console.WriteLine("2- вывод на экран элемента массива");
Console.WriteLine("3- вывод на экран массива");
Console.WriteLine("4- вывод на экран массива элементов умноженных на скаляр");
Console.WriteLine("5- вывод на экран массива элементов разделенных на скаляр");
Console.WriteLine("6- создание 2-х массивов указанной размерности");

}
static void menu1()
{
Console.WriteLine("7- поэлементное сложение массивов");
Console.WriteLine("8- поэлементное вычитание массивов");
Console.WriteLine("9- возврат в основное меню");


}
static void new_mass()
{
Console.WriteLine("Введите размер массива");
i = int.Parse(Console.ReadLine());
mass1 = new int[i];
Console.WriteLine("Введите первый элемент");
int ii = 0; f = Console.ReadLine();
while (f != "k")
{ int q = 0;

if (Int32.TryParse(f, NumberStyles.Integer, null, out q) == true)
{

if (ii < i)
{
mass1[ii] = q;
Console.WriteLine("Введите следующий элемент");
ii++;
if (ii < i)
{
f = Console.ReadLine();
}
}
else
{
Console.WriteLine("Достигнут предел индекса массива");
f = "k";
}

}
else
{
Console.WriteLine("Должно быть число ");
f = Console.ReadLine();

}



}
Console.WriteLine("Массив создан");
menu();
Read line(Console.ReadLine());

}
static void print_elem()
{
if (mass1 is int[])
{
Console.WriteLine("Введите индекс нужного элемента по окончании введите k");
int ii = mass1.Length;
f = Console.ReadLine();

while (f != "k")
{
int q = 0;

if (Int32.TryParse(f, NumberStyles.Integer, null, out q) == true)
{

if (q < i)
{
int qq = mass1[q];

Console.WriteLine("Индекс элемента - " + q + " элемент - " + qq);
Console.WriteLine("Введите следующий индекс массива");

f = Console.ReadLine();

}
else
{
Console.WriteLine("Значение индекса за пределами массива");
Console.WriteLine("Введите следующий индекс массива");

f = Console.ReadLine();

}

}
else
{
Console.WriteLine("Должно быть число ");
f = Console.ReadLine();

}



}
menu();
Readline(Console.ReadLine());
}
else
{
Console.WriteLine("Создайте массив");
menu();
Readline(Console.ReadLine());

}


}
static void print_mass( )
{
if (mass1 is int[])
{
for (int ii = 0; ii < i; ii++)
{
int q=mass1[ii];
Console.WriteLine("Индекс элемента - " + ii + " элемент - " + q);

}

}
else
{
Console.WriteLine("Создайте массив");
menu();
Readline(Console.ReadLine());

}
menu();
Readline(Console.ReadLine());


}
static void mass_um_skal()
{

if (mass1 is int[])
{
Console.WriteLine("Введите число на какое надо умножить элементы массива ");
f = Console.ReadLine();
int q = 0;
if (Int32.TryParse( f, NumberStyles.Integer, null, out q) == true)
{

for (int ii = 0; ii < i; ii++)
{
int qq = mass1[ii]*q;
Console.WriteLine("Индекс элемента - " + ii + " элемент - " + qq);

}
}
else
{
Console.WriteLine("Должно быть число ");
f = Console.ReadLine();
}


}
else
{
Console.WriteLine("Создайте массив");
menu();
Readline(Console.ReadLine());

}
menu();
Readline(Console.ReadLine());

}
static void mass_del_skal()
{

if (mass1 is int[])
{
Console.WriteLine("Введите число на какое надо разделить элементы массива ");
f = Console.ReadLine();
int q = 0;
if (Int32.TryParse(f, NumberStyles.Integer, null, out q) == true)
{

for (int ii = 0; ii < i; ii++)
{
int qq = mass1[ii] / q;
Console.WriteLine("Индекс элемента - " + ii + " элемент - " + qq);

}
}
else
{
Console.WriteLine("Должно быть число ");
f = Console.ReadLine();
}


}
else
{
Console.WriteLine("Создайте массив");
menu();
Readline(Console.ReadLine());

}
menu();
Readline(Console.ReadLine());

}
static void new_2_mass()
{
Console.WriteLine("Введите размер первого массива ");
i = int.Parse(Console.ReadLine());
mass1 = new int[i];
new_mass2(mass1 );
Console.WriteLine("Введите размер второго массива ");
i = int.Parse(Console.ReadLine());
mass2 = new int[i];
new_mass2(mass2 );
menu1();
Readline(Console.ReadLine());
}
static void new_mass2(int[] mas)
{

Console.WriteLine("Введите первый элемент");
int ii = 0;
f = Console.ReadLine();
while (f != "k")
{
int q = 0;

if (Int32.TryParse(f, NumberStyles.Integer, null, out q) == true)
{

if (ii < i)
{
mas[ii] = q;
ii++;
if (ii < i)
{
Console.WriteLine("Введите следующий элемент");
f = Console.ReadLine();
}
}
else
{
Console.WriteLine("Достигнут предел индекса массива");
f = "k";
}

}
else
{
Console.WriteLine("Должно быть число ");
f = Console.ReadLine();

}



}
Console.WriteLine("Массив создан");

}

static void mass_2_plus()
{
if (mass1 is int[]&& mass2 is int[] && mass1.Length == mass2.Length )
{

int q = 0;

for (int ii = 0; ii < i; ii++)
{
int qq = mass1[ii] + mass2[ii];
Console.WriteLine("Индекс элемента - " + ii + " элемент - " + qq);

}


}
else
{
Console.WriteLine("Создайте массивы или у массивов разные размеры");
menu();
Readline(Console.ReadLine());

}
menu1();
Readline(Console.ReadLine());
}

static void mass_2_minus()
{
if (mass1 is int[] && mass2 is int[] && mass1.Length == mass2.Length)
{

int q = 0;

for (int ii = 0; ii < i; ii++)
{
int qq = mass1[ ii] - mass2[ii];
Console.WriteLine("Индекс элемента - " + ii + " элемент - " + qq);

}


}
else
{
Console.WriteLine("Создайте массивы или у массивов разные размеры");
menu();
Readline(Console.ReadLine());

}
menu1();
Readline(Console.ReadLine());
}
}


}

Ответ отправил: Челноков Виктор Альбертович (Студент)
Ответ отправлен: 08.11.2010, 12:09
Номер ответа: 263879

Оценка ответа: 5

Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 263879 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:


  • Оценить выпуск »
    Нам очень важно Ваше мнение об этом выпуске рассылки!

    Задать вопрос экспертам этой рассылки »

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2010, Портал RFPRO.RU, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2010.6.23 от 10.11.2010

    В избранное