New
Переделай пожалуйста из VB в c#:
function CheckPFNumber(const Value:String):Boolean;
var I,Summa:Integer;
begin
Result:=False;
if Length(Value)<>11 then
exit;
for I:=1 to 11 do
if not (Value[I] in ['0'..'9']) then
exit;
Summa:=0;
for I:=1 to 9 do
Inc(Summa,StrToInt(Value[I])*(10-I)); // вычисляем контрольную сумму
Result:=StrToInt(Copy(Value,10,2))=(Summa mod 101); // проверяем остаток от деления контрольной суммы на 101 с двумя последними числам
end;
Jan 16, 7:37am

Конечно! Вот эквивалентный код на C#:

csharp
using System; public class Program { public static bool CheckPFNumber(string value) { if (value.Length != 11) { return false; } foreach (char c in value) { if (c < '0' || c > '9') { return false; } } int summa = 0; for (int i = 0; i < 9; i++) { summa += (value[i] - '0') * (10 - (i + 1)); // вычисляем контрольную сумму } int controlSum = int.Parse(value.Substring(9, 2)); return controlSum == (summa % 101); // проверяем остаток от деления контрольной суммы на 101 с двумя последними числами } public static void Main() { string testValue = "12345678901"; bool result = CheckPFNumber(testValue); Console.WriteLine(result); // Вывод результата проверки } }

Этот код выполняет ту же задачу, что и ваш исходный код на VB: проверяет, является ли строка корректным номером ПФ (Пенсионного Фонда) на основе контрольной суммы.

Jan 16, 7:37am

This Chat is read-only. Login to resume chatting.

using System; public class Program { public static bool CheckPFNumber(string value) { if (value.Length != 11) { return false; } foreach (char c in value) { if (c < '0' || c > '9') { return false; } } int summa = 0; for (int i = 0; i < 9; i++) { summa += (value[i] - '0') * (10 - (i + 1)); // вычисляем контрольную сумму } int controlSum = int.Parse(value.Substring(9, 2)); return controlSum == (summa % 101); // проверяем остаток от деления контрольной суммы на 101 с двумя последними числами } public static void Main() { string testValue = "12345678901"; bool result = CheckPFNumber(testValue); Console.WriteLine(result); // Вывод результата проверки } }