русс | укр

C# - Главная
Контакты
Задайте вопрос...
Просмотр всех вопросов


Пространство имен
  ► System
  ► Microsoft


Для учеников (начинающих)
  ► Видео уроки
  ► Обучение
  ► Примеры программ
  ► Секреты в Си Шарп

Для профессионалов
  ► Обучение
  ► Примеры программ
  ► Задачки - для тебя!










Работа с методами в C#. Пример программы

Написать программу, которая показывает пример использование методов и правильность их написания.

Программа работает с шифрованием, дешифрованием массива символов. Имеется 3 метода: шифрование/дешифрование, вывод ошибки, проверка равенства полученных результатов.

 

Код программы:

using System;

namespace My3
{
     class Program
     {
          static void Main(string[] args)
          {
               Program p = new Program(); // объявляем переменную типа класса Program,
               // чтобы вызвать методы, которые в классе. Т.е. на прямую вызывать нельзя...

               char[] chr = { 'a', 'l', 'e', 'x', 'a', 'n', 'd', 'e', 'r' };
               char[] chr2 = new char[chr.Length]; // копия переменной chr
               Console.Write("chr: ");
               Console.WriteLine(chr);

               // шифрование числов
               for (int i = 0; i < chr.Length; i++)
               {
                    chr2[i] = p.shifr(chr[i],i); // вызов метода шифрования
               }
               Console.Write("chr-shifr: ");
               Console.WriteLine(chr2);
               for (int i = 0; i < chr.Length; i++)
               {
                    chr2[i] = p.shifr(chr2[i], i); // вызов метода дешифрования
               }
               Console.Write("chr-deshifr: ");
               Console.WriteLine(chr2);
               if (!p.ravenstvo(chr,chr2))
               {
                    p.printError("Shifra! "); // вызов метода ошибки шифра
               }

               Console.ReadKey();
          }

          void printError(string s) // наш метод для вывода сообщения ошибки
          {
               Console.Write("Error! " + s + " Press Key...");
               Console.ReadKey();
          }

          char shifr(char x, int shifr) // наш метод для шифрования\дешифрования
          {
               x = (char)(x ^ shifr);
               return x;
          }

          bool ravenstvo(char[] c1, char[] c2) // наш метод для определения равенства
          {
               if (c1.Length == c2.Length)
               {
                    for (int k = 0; k < c1.Length; k++)
                    {
                         if (c1[k] != c2[k]) return false;
                    }
               }
               return true;
          }
     }
}

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

 

Результат работы программы:

Шифрование прошло успешно:

Шифрование прошло не успешно:

Просмотров: 19629






© 2012 ci-sharp.ru При использовании материала прямая индексирующая ссылка на сайт ОБЯЗАТЕЛЬНА.
Права строго защищены нормами международного права, интеллектуальной собственности и авторского права.