Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.06.2010, 13:42   #1
Alex_sim
Форумчанин
 
Аватар для Alex_sim
 
Регистрация: 18.02.2010
Сообщений: 164
Восклицание Счетчик

Здравствуйте можно ли кого попросить перевести этот
не большой код на с sharp
буду очень признателен
Код:
var A:array[0..100] of Byte; e:Byte;
begin
for e:=0 to 100 do A[e]:=0; 
repeat ReadLn(e); A[e]:=A[e]+1 until e=0;
for e:=1 to 100 do if A[e]<>0 then WriteLn (e:5,A[e]:5);
Alex_sim вне форума Ответить с цитированием
Старый 12.06.2010, 16:19   #2
rmammoth
 
Регистрация: 11.06.2010
Сообщений: 7
По умолчанию

Держи. Инициализация 0 не нужна -- по умолчанию массивы в шарпе инициализируются 0. Добавил проверки на формат значения и выход из диапазона.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Counter
{
class Program
{
static void Main(string[] args)
{
const byte sz = 101;
byte[] A = new byte[sz];
byte e = 0;

do
{
try
{
e = byte.Parse(Console.ReadLine());
A[e] = (byte)(A[e] + 1);
}
catch (FormatException)
{
Console.WriteLine("Wrong input!");
throw;
}
catch (IndexOutOfRangeException)
{
Console.WriteLine("Out of bounds!");
throw;
}
}
while (e != 0);

for (e = 1; e < sz; ++e)
if (A[e] != 0)
Console.WriteLine("{0,5}{1,5}", e, A[e]);
}
}
}
rmammoth вне форума Ответить с цитированием
Старый 13.06.2010, 04:30   #3
rmammoth
 
Регистрация: 11.06.2010
Сообщений: 7
По умолчанию Держи

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Counter
{
class Program
{
static void Main(string[] args)
{
const byte sz = 101;
byte[] A = new byte[sz];
byte e = 0;

do
{
try
{
e = byte.Parse(Console.ReadLine());
A[e] = (byte)(A[e] + 1);
}
catch (FormatException)
{
Console.WriteLine("Wrong input!");
throw;
}
catch (IndexOutOfRangeException)
{
Console.WriteLine("Out of bounds!");
throw;
}
}
while (e != 0);

for (e = 1; e < sz; ++e)
if (A[e] != 0)
Console.WriteLine("{0,5}{1,5}", e, A[e]);
}
}
}

Начальное обнуление не нужно -- шарп инициализирует массивы значением по умолчанию. Добавил проверку корректности ввода.
rmammoth вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Счетчик импульсов stanik123 Общие вопросы Delphi 11 09.10.2009 10:10
Счетчик в Делфи Дмитрий Гриб Помощь студентам 2 09.06.2009 16:48
Счетчик в Паскале NSvirus Паскаль, Turbo Pascal, PascalABC.NET 2 18.05.2009 13:06
счетчик Dimati87 Microsoft Office Excel 3 09.04.2009 10:02