
Будь я хоть негр
преклонных годов,
Хоть исландец,
пропахший рыбой...
Я б японский выучил
только за то,
Что на нем
разговаривал Киба!

Будь я хоть негр
преклонных годов,
Хоть исландец,
пропахший рыбой...
Я б японский выучил
только за то,
Что на нем
разговаривал Киба!

Аниме, так-то про пенсионера, который в результате несчастного случая с НЛО, получает новое тело и превращается в боевого робота. Правда вместе с ним, такие же способности получает и омежка, которым в детстве был известный всем Владимир Таврический Хуйло.
Хуйло начинает валить всех направо и налево, руководствуясь принципом: «друзьям все — остальным пиздец», так что от него даже друг сваливает (это прямо предсказание, запомните этот твит). Причем валит даже не по делу, а ради удовольствия.
А Дед, он воюет со злом, пиздит гопников, выпиливает бандитов, да и охотится за Хуйлом (правда, весьма вяло).
Понятно, что такое молодежи показывать нельзя.
Попробуй этому пенсионеру повысить пенсионный возраст, скажет ведь: «То, что вы делаете, недостойно» — и развесит по фонарям и ПФ РФ, и роскрысдию и ФСО.
Тем более, уничтожил самую крутую банду нараёне, как так-то? Прямая отсылка к самой крутой банде в ГОРФ, т.е. к нашему, а не анимешному Хуйлу и его друзьям-подхуйловникам.
Ну и, естественно, японцы, того не желая, наступили на мантру пропаганды всея ГОРФ — «Деды Воевали»!
Нельзя показывать, ну никак нельзя.
ЗЫ. Гей-секс там был, но исключительно в негативной коннотации, как отношения между старшим бандитом и подчиненным. Хотя и это, наверное, задело зоновский роскомсуд, т.к. такой гей-секс в ГОРФ вполне разрешен. А его тут с негативной стороны показывают.
ЗЗЫ. Антагонист, впрочем, тоже сделал полезную вещь, хотя и в стиле роскомнадзора — перебил кучу анонов с местного двача. А потом даже исправился и помог планету спасти.
Запретили песенку на территории ГОРФ, ублюдки сраные из роскомговна. По поводу нам скидывали интервью Барта, фронтмена группы «Ничего хорошего», но оно безблагодатно проебано куда-то, тяжко иметь 40+ аккаунтов в соцсетях, и потом разобраться, где с кем переписывался.
Прямая ссылка: https://www.youtube.com/watch?v=RLV53ix4GVM
Прямая ссылка: https://www.youtube.com/watch?v=VQwJQ45F57c
Здесь (копия) я показал довольно неоптимальный способ решения данной задачи, но его можно оптимизировать с помощью стандартных функций. Напомню суть задачи: даны числа, скажем, от 1 до 1000, необходимо вывести их на экран или в файл последовательно, добавив лидирующие ноли, исходя из максимального числа. Если максимум 1000, то числа должны быть выведены так:
0001
0002
0003
...
0100
0101
0102
...
1000
Если максимум 100, то:
001
002
...
099
100
Как и в предыдущей версии решения, понадобится задать максимальное число (в тестовых примерах опять же, зададим его статически), например:
int maxnum = 150;
И опять же, понадобится функция, вычисляющая количество цифр (разрядов) числа (копия). Например, такая:
static int CountDigitsRec(int n)
{
n = (int)Math.Abs(n);
if (n <= 9)
{
return 1;
}
else
{
return CountDigitsRec(n / 10) + 1;
}
}
C# автоматически умеет форматировать строки, используя специальные паттерны описания формата, задаваемые в виде строки. Основные паттерны перечислены в таблице ниже:
| C / c | Задает формат денежной единицы, указывает количество десятичных разрядов после запятой |
| D / d | Целочисленный формат, указывает минимальное количество цифр |
| E / e | Экспоненциальное представление числа, указывает количество десятичных разрядов после запятой |
| F / f | Формат дробных чисел с фиксированной точкой, указывает количество десятичных разрядов после запятой |
| G / g | Задает более короткий из двух форматов: F или E |
| N / n | Также задает формат дробных чисел с фиксированной точкой, определяет количество разрядов после запятой |
| P / p | Задает отображения знака процентов рядом с число, указывает количество десятичных разрядов после запятой |
| X / x | Шестнадцатеричный формат числа |
Для форматирования строки, содержащей целое число, необходимо использовать паттерн d.
Отформатировать строку можно сразу во время вывода на консоль, функцией Console.Write()/Console.WriteLine():
int num = 125
Console.Write ("0:d4", num) //вывод: 0125
или
int num = 25
Console.Write ("0:d4", num) //вывод: 0025
Пример:
static void Main(string[] args)
{
int maxnum = 150;
string FormatPattern = "{0:d" +
CountDigitsRec(maxnum).ToString() + "}";
for (int i = 0; i <= maxnum; i++)
{
Console.WriteLine(FormatPattern, i);
}
Console.WriteLine("Press Enter...");
Console.ReadLine();
}
Функция String.Format() может сделать аналогичную операцию, но отличается тем, что вывод функции можно сохранить в строковую переменную и использовать далее, а не просто вывести на консоль.
Пример:
static void Main(string[] args)
{
int maxnum = 1150;
string FormatPattern = "{0:d" +
CountDigitsRec(maxnum).ToString() + "}";
string TempFile = Path.GetTempFileName();
string Result = "";
List<string> WriteList = new List<string>();
for (int i = 0; i <= maxnum; i++)
{
Result = String.Format(FormatPattern,i);
Console.WriteLine(Result);
WriteList.Add(Result);
}
File.WriteAllLines(TempFile, WriteList.ToArray());
Console.WriteLine("Test file: " + TempFile);
Console.WriteLine("Press Enter...");
Console.ReadLine();
}
В цикле результат работы функции String.Format() возвращается в переменную Result, значение которой выводится на консоль и сохраняется в List<string> WriteList для дальнейшей записи в файл.
Примечание: в источнике есть еще варианты форматирования строк, ознакомьтесь.