Русские секретов не выдают

Страницы: 1 ...  4 5 6 7  ОТВЕТИТЬ НОВАЯ ТЕМА
Pitrof 25 июн 2026 в 11:41
Шутник  •  На сайте 12 лет
0
5 шаверм :)

Размещено через приложение ЯПлакалъ
PartnerSever 25 июн 2026 в 11:43
Приколист  •  На сайте 3 года
0
Четверо, пятеро Ильи... Пять самсы

Размещено через приложение ЯПлакалъ
shum85 25 июн 2026 в 11:48
Ярила  •  На сайте 5 лет
0
А хрен его знает чего из него вылупился вот оно и оно.

Размещено через приложение ЯПлакалъ
Hellsaws 25 июн 2026 в 13:19
Ярила  •  На сайте 7 лет
1
Пять Илий и пять самс.
ikota1974 25 июн 2026 в 14:00
Хохмач  •  На сайте 12 лет
0
Приходи ко мне, симпатяжка, я тебе объясню что такое очко с мягким знаком и жопа с двумя п. Расскажу, покажу и дам попробовать. 😂😂😂

Размещено через приложение ЯПлакалъ
addm 25 июн 2026 в 15:29
Весельчак  •  На сайте 10 лет
0
Одна сова
Две совы
Три совы
Четыре совы
Пять соф
ужОс нах
Хьюи 25 июн 2026 в 17:04
Ярила  •  На сайте 4 года
0
Цитата (алекс1776 @ 25 июн 2026 в 02:24)

Одно говно
...
Четыре говна
Пять...?

Говно, средний род. Подбираем аналог, допустим, "окно". Пять окон (легко, правда?)
Соответственно, пять говен

Это сообщение отредактировал Хьюи - 25 июн 2026 в 17:04
Хьюи 25 июн 2026 в 17:07
Ярила  •  На сайте 4 года
1
Цитата (addm @ 25 июн 2026 в 15:29)

Одна сова
Две совы
Три совы
Четыре совы
Пять соф
ужОс нах

Не так)
Одна сова.....
Один глобус
Два глобуса
Три глобуса
Четыре глобуса
Пять глобусов!!!! Вот это ужоснах)

Русские секретов не выдают
klafin 25 июн 2026 в 17:13
Ярила  •  На сайте 12 лет
0
Объясните мне почему у немцев цифры выше двадцати сначала произносят единицы, а потом десятки, а во французском вообще какая то математика после 17 произносят как 10+7, а после 70 вообще например 80 это как 70+10 или вообще с умножением, например 90 — quatre‑vingt‑dix (4 × 20 + 10) и что это как не извращенный счет.
ингридиент 25 июн 2026 в 18:53
Ярила  •  На сайте 10 лет
1
Цитата (IraZadira @ 25.06.2026 - 00:27)
Пять Ильёв.
Пять самсов.
Не благодари.

...пять рыбов!

Размещено через приложение ЯПлакалъ
Zarin38 25 июн 2026 в 20:19
Дамилола  •  На сайте 11 лет
1
Пжалста. Пользуйся, мне не жалко...

Код

using System.Text;

namespace Ans.Net10.Common
{

public static class SuppLangRu
{

 /* functions */


 public static string Sample()
  => _Consts.GET_RANDOM_SAMPLE_RU();

 public static string SampleSmall()
  => _Consts.GET_RANDOM_SAMPLE_SMALL_RU();

 public static string SampleSmaller()
  => _Consts.GET_RANDOM_SAMPLE_SMALLER_RU();


 /// <summary>
 /// Возвращает транслитерацию char с русского на английский
 /// ГОСТ Р 7.0.34-2014
 /// (https://www.ifap.ru/library/gost/70342014.pdf)
 /// </summary>
 public static string GetTranslitRuToEn(
  char value)
 {
  return value switch
  {
   'а' => "a",
   'б' => "b",
   'в' => "v",
   'г' => "g",
   'д' => "d",
   'е' => "e",
   'ё' => "yo",
   'ж' => "zh",
   'з' => "z",
   'и' => "i",
   'й' => "y",
   'к' => "k",
   'л' => "l",
   'м' => "m",
   'н' => "n",
   'о' => "o",
   'п' => "p",
   'р' => "r",
   'с' => "s",
   'т' => "t",
   'у' => "u",
   'ф' => "f",
   'х' => "kh",
   'ц' => "ts",
   'ч' => "ch",
   'ш' => "sh",
   'щ' => "shh",
   'ъ' => "",
   'ы' => "y",
   'ь' => "",
   'э' => "e",
   'ю' => "yu",
   'я' => "ya",
   _ => value.ToString(),
  };
 }


 /// <summary>
 /// Возвращает транслитерацию string с русского на английский
 /// ГОСТ Р 7.0.34-2014
 /// (https://www.ifap.ru/library/gost/70342014.pdf)
 /// </summary>
 public static string GetTranslitRuToEn(
  string source)
 {
  if (string.IsNullOrEmpty(source))
   return string.Empty;
  var sb1 = new StringBuilder();
  foreach (var char1 in source)
   sb1.Append(GetTranslitRuToEn(char1));
  return sb1.ToString();
 }


 /// <summary>
 /// Возвращает транслитерацию StringBuilder с русского на английский
 /// ГОСТ Р 7.0.34-2014
 /// (https://www.ifap.ru/library/gost/70342014.pdf)
 /// </summary>
 public static StringBuilder GetTranslitRuToEn(
  StringBuilder source)
 {
  var sb1 = new StringBuilder();
  foreach (var char1 in source.ToString())
   sb1.Append(GetTranslitRuToEn(char1));
  return sb1;
 }


 /// <summary>
 /// ё --> е
 /// </summary>
 public static char GetFixUmlautRu(
  char value)
 {
  return value switch
  {
   'ё' => 'е',
   'Ё' => 'Е',
   _ => value,
  };
 }


 /// <summary>
 /// ё --> е
 /// </summary>
 public static string GetFixUmlautRu(
  string source)
 {
  if (string.IsNullOrEmpty(source))
   return string.Empty;
  var sb1 = new StringBuilder();
  foreach (var char1 in source)
   sb1.Append(GetFixUmlautRu(char1));
  return sb1.ToString();
 }


 /// <summary>
 /// ё --> е
 /// </summary>
 public static StringBuilder GetFixUmlautRu(
  StringBuilder source)
 {
  var sb1 = new StringBuilder();
  foreach (var char1 in source.ToString())
   sb1.Append(GetFixUmlautRu(char1));
  return sb1;
 }


 /// <summary>
 /// № --> Nº
 /// </summary>
 public static string GetFixNumberRu(
  char value)
 {
  return value switch
  {
   '№' => "Nº",
   _ => value.ToString(),
  };
 }


 /// <summary>
 /// № --> Nº
 /// </summary>
 public static string GetFixNumberRu(
  string source)
 {
  if (string.IsNullOrEmpty(source))
   return string.Empty;
  var sb1 = new StringBuilder();
  foreach (var char1 in source)
   sb1.Append(GetFixNumberRu(char1));
  return sb1.ToString();
 }


 /// <summary>
 /// № --> Nº
 /// </summary>
 public static StringBuilder GetFixNumberRu(
  StringBuilder source)
 {
  var sb1 = new StringBuilder();
  foreach (var char1 in source.ToString())
   sb1.Append(GetFixNumberRu(char1));
  return sb1;
 }



 /// <summary>
 /// Возвращает склонение для числа
 /// </summary>
 public static string GetDeclineRu(
  int number,
  string for1,
  string forFrom2To4,
  string for0AndFrom5To9AndFrom11To19)
 {
  if (number > 10)
  {
   int r1 = number % 100;
   if (r1 > 10 && r1 < 20)
    return for0AndFrom5To9AndFrom11To19;
  }
  return (number % 10) switch
  {
   1 => for1,
   > 1 and < 5 => forFrom2To4,
   _ => for0AndFrom5To9AndFrom11To19
  };
 }


 /// <summary>
 /// Возвращает склонение для числа по шаблону
 /// </summary>
 public static string GetDeclineRu(
  string template,
  int number,
  string for1,
  string forFrom2To4,
  string for0AndFrom5To9AndFrom11To19)
 {
  var s1 = GetDeclineRu(
   number,
   for1,
   forFrom2To4,
   for0AndFrom5To9AndFrom11To19);
  return string.Format(template, number, s1);
 }


 /// <summary>
 /// Возвращает склонение для числа лет
 /// </summary>
 public static string GetAgeStringRu(
  int year)
 {
  return GetDeclineRu("{0} {1}", year, "год", "года", "лет");
 }


 /// <summary>
 /// Возвращает значение целого числа прописью
 /// </summary>
 public static string GetWordsRu(
  long value,
  WordCasesEnum textCase = WordCasesEnum.Nominative,
  bool isMale = true,
  bool firstCapital = false)
 {
  long value1 = value;
  if ((value1 >= (long)Math.Pow(10, 15)) || value1 < 0)
   return "";
  var sb1 = new StringBuilder();
  int r1;
  int p1 = 0;
  while (value1 > 0)
  {
   r1 = (int)(value1 % 1000);
   value1 /= 1000;
   switch (p1)
   {
    case 12:
     sb1.insеrt(0, _makeText(r1,
      const_100s,
      const_10s,
      const_3to19,
      const_2_male,
      const_1_male,
      const_1000000000000s));
     break;
    case 9:
     sb1.insеrt(0, _makeText(r1,
      const_100s,
      const_10s,
      const_3to19,
      const_2_male,
      const_1_male,
      const_1000000000s));
     break;
    case 6:
     sb1.insеrt(0, _makeText(r1,
      const_100s,
      const_10s,
      const_3to19,
      const_2_male,
      const_1_male,
      const_1000000s));
     break;
    case 3:
     switch (textCase)
     {
      case WordCasesEnum.Accusative:
       sb1.insеrt(0, _makeText(r1,
        const_100s,
        const_10s,
        const_3to19,
        const_2_female,
        const_1_female_accusative,
        const_1000s_accusative));
       break;
      default:
       sb1.insеrt(0, _makeText(r1,
        const_100s,
        const_10s,
        const_3to19,
        const_2_female,
        const_1_female,
        const_1000s));
       break;
     }
     break;
    default:
     string[] a1 = [];
     switch (textCase)
     {
      case WordCasesEnum.Genitive:
       sb1.insеrt(0, _makeText(r1,
        const_100s_genetive,
        const_10s_genetive,
        const_3to19_genetive,
        ((isMale) ? const_2_male_genetive : const_2_female_genetive),
        ((isMale) ? const_1_male_genetive : const_1_female), a1));
       break;
      case WordCasesEnum.Accusative:
       sb1.insеrt(0, _makeText(r1,
        const_100s,
        const_10s,
        const_3to19,
        ((isMale) ? const_2_male : const_2_female),
        ((isMale) ? const_1_male : const_1_female_accusative), a1));
       break;
      default:
       sb1.insеrt(0, _makeText(r1,
        const_100s,
        const_10s,
        const_3to19,
        ((isMale) ? const_2_male : const_2_female),
        ((isMale) ? const_1_male : const_1_female), a1));
       break;
     }
     break;
   }
   p1 += 3;
  }
  var s1 = (value == 0)
   ? const_0
   : sb1.ToString().Trim();
  return (!string.IsNullOrEmpty(s1) && firstCapital)
   ? string.Concat(s1[..1].ToUpper(), s1.AsSpan(1))
   : s1;
 }


 /// <summary>
 /// Возвращает значение дробного числа прописью
 /// </summary>
 public static string GetWordsRu(
  double source,
  int power,
  WordCasesEnum textCase = WordCasesEnum.Nominative,
  bool firstCapital = false)
 {
  double p1 = Math.Pow(10, power);
  long l1 = (long)Math.Round(source * p1) % (long)p1;
  var s1 = GetWordsRu((long)source, textCase, true, firstCapital);
  var s2 = GetWordsRu(l1, textCase, true, false);
  return $"{s1} целых {s2}".Trim();
 }


 /// <summary>
 /// Возвращает сумму в рублях прописью
 /// </summary>
 public static string GetAmountInRublesInWords(
  double amount,
  bool firstCapital)
 {
  var rub1 = (long)Math.Floor(amount);
  var cop1 = ((long)Math.Round(amount * 100)) % 100;
  int lastRubles1 = _getLastDigit(rub1);
  int lastCopecks1 = _getLastDigit(cop1);
  var sb1 = new StringBuilder();
  sb1.AppendFormat("{0} ",
   GetWordsRu(rub1, WordCasesEnum.Nominative, true, firstCapital));
  if (_isPluralGenitive(lastRubles1))
   sb1.AppendFormat("{0} ", const_rubles[3]);
  else if (_isSingularGenitive(lastRubles1))
   sb1.AppendFormat("{0} ", const_rubles[2]);
  else
   sb1.AppendFormat("{0} ", const_rubles[1]);
  sb1.AppendFormat("{0:00} ", cop1);
  if (_isPluralGenitive(lastCopecks1))
   sb1.AppendFormat("{0} ", const_copecks[3]);
  else if (_isSingularGenitive(lastCopecks1))
   sb1.AppendFormat("{0} ", const_copecks[2]);
  else
   sb1.AppendFormat("{0} ", const_copecks[1]);
  return sb1.ToString().Trim();
 }


 /* privates */


 private const string const_0 = "ноль";
 private const string const_1_male = "один";
 private const string const_1_male_genetive = "одно";
 private const string const_1_female = "одна";
 private const string const_1_female_accusative = "одну";
 private const string const_2_male = "два";
 private const string const_2_male_genetive = "двух";
 private const string const_2_female = "две";
 private const string const_2_female_genetive = "двух";

 private static readonly string[] const_3to19
  = ["", "три", "четыре", "пять", "шесть", "семь", "восемь", "девять", "десять", "одиннадцать", "двенадцать", "тринадцать", "четырнадцать", "пятнадцать", "шестнадцать", "семнадцать", "восемнадцать", "девятнадцать"];

 private static readonly string[] const_3to19_genetive
  = ["", "трех", "четырех", "пяти", "шести", "семи", "восеми", "девяти", "десяти", "одиннадцати", "двенадцати", "тринадцати", "четырнадцати", "пятнадцати", "шестнадцати", "семнадцати", "восемнадцати", "девятнадцати"];

 private static readonly string[] const_10s
  = ["", "двадцать", "тридцать", "сорок", "пятьдесят", "шестьдесят", "семьдесят", "восемьдесят", "девяносто"];

 private static readonly string[] const_10s_genetive
  = ["", "двадцати", "тридцати", "сорока", "пятидесяти", "шестидесяти", "семидесяти", "восьмидесяти", "девяноста"];

 private static readonly string[] const_100s
  = ["", "сто", "двести", "триста", "четыреста", "пятьсот", "шестьсот", "семьсот", "восемьсот", "девятьсот"];

 private static readonly string[] const_100s_genetive
  = ["", "ста", "двухсот", "трехсот", "четырехсот", "пятисот", "шестисот", "семисот", "восемисот", "девятисот"];

 private static readonly string[] const_1000s
  = ["", "тысяча", "тысячи", "тысяч"];

 private static readonly string[] const_1000s_accusative
  = ["", "тысячу", "тысячи", "тысяч"];

 private static readonly string[] const_1000000s
  = ["", "миллион", "миллиона", "миллионов"];

 private static readonly string[] const_1000000000s
  = ["", "миллиард", "миллиарда", "миллиардов"];

 private static readonly string[] const_1000000000000s
  = ["", "трилион", "трилиона", "триллионов"];

 private static readonly string[] const_rubles
  = ["", "рубль", "рубля", "рублей"];

 private static readonly string[] const_copecks
  = ["", "копейка", "копейки", "копеек"];


 private static string _makeText(
  int value,
  string[] text100s,
  string[] text10s,
  string[] text3to19,
  string text2,
  string text1,
  string[] powers)
 {
  var sb1 = new StringBuilder();
  int i1 = value;
  if (i1 >= 100)
  {
   sb1.Append(text100s[i1 / 100] + " ");
   i1 %= 100;
  }
  if (i1 >= 20)
  {
   sb1.Append(text10s[i1 / 10 - 1] + " ");
   i1 %= 10;
  }
  if (i1 >= 3)
   sb1.Append(text3to19[i1 - 2] + " ");
  else if (i1 == 2)
   sb1.Append(text2 + " ");
  else if (i1 == 1)
   sb1.Append(text1 + " ");
  if (value != 0 && powers.Length > 0)
  {
   i1 = _getLastDigit(value);
   if (_isPluralGenitive(i1))
    sb1.Append(powers[3] + " ");
   else if (_isSingularGenitive(i1))
    sb1.Append(powers[2] + " ");
   else
    sb1.Append(powers[1] + " ");
  }
  return sb1.ToString();
 }


 private static bool _isPluralGenitive(
  int value)
 {
  return (value == 0 || value > 4);
 }


 private static bool _isSingularGenitive(
  int value)
 {
  return (value > 1 && value < 5);
 }


 private static int _getLastDigit(
  long value)
 {
  return (int)(value switch
  {
   > 99 => value % 100,
   > 19 => value % 10,
   _ => value
  });
 }

}

}

Это сообщение отредактировал Zarin38 - 25 июн 2026 в 20:21
Dgunus 25 июн 2026 в 21:55
Ярила  •  На сайте 9 лет
1
Цитата (Patamushta @ 25 июн 2026 в 00:29)
Цитата (dimkey @ 25.06.2026 - 00:28)
Один хуй,
Два хуя,
Три хуя,
Четыре хуя,
Пять хуёв почему-то

Кстати, с женским органом тоже проблема начиная с пяти.

Если ты русский, то никаких проблем - пять пёзд, пять Илюх (Ильей), пять самс... Всё же просто.
duches 25 июн 2026 в 22:01
Ярила  •  На сайте 10 лет
1
Цитата (Patamushta @ 25 июн 2026 в 00:29)
Цитата (dimkey @ 25.06.2026 - 00:28)
Один хуй,
Два хуя,
Три хуя,
Четыре хуя,
Пять хуёв почему-то

Кстати, с женским органом тоже проблема начиная с пяти.

Пизд же gigi.gif
janibush 25 июн 2026 в 22:01
Ярила  •  На сайте 17 лет
2
Пять Илюх.
Целофанов 25 июн 2026 в 23:35
Ярила  •  На сайте 8 лет
0
Звездей или звездов?

Размещено через приложение ЯПлакалъ
ДракОвен 26 июн 2026 в 03:54
Юморист  •  На сайте 8 лет
0
А вот вопрос, чур не подглядывать в инете)

Единственное число - дно
Множественное число - ?

P.S. знакомый сказал ДНЫ, ответ неверный
Целофанов 26 июн 2026 в 08:25
Ярила  •  На сайте 8 лет
2
Как правильно
- физика и химика или
- физия и химия ?

Размещено через приложение ЯПлакалъ
DSense 26 июн 2026 в 08:52
Ярила  •  На сайте 7 лет
0
Цитата (denver90 @ 25 июн 2026 в 00:46)
Это все фигня. В английском языке, около 10 глаголов обозначающих движение, и на этом все. В русском 40-50 штук с учётом приставок.

Я вообще удивилась иностранцам которые могут говорить предложениями на русском языке. Это очень сложно. Английски и многие западные языки - конструктор лего, русский это пластелин. Но локаничность западных языков, это скорее плюс с точки зрения коммуникации.

10 глаголов движения, которые ВЫ лично знаете или вообще?
Гугл говорит о 100-200 глаголах движения в английском.
Скудноватые у вас познания.

И про пластилин неверно.
Пластилин-это когда нет четко определенных приставок или суффиксов, например.
Русский был бы пластилином если бы в качестве, скажем, приставки можно было бы использовать
любое реальное или выдуманное слово.
Но это не так-компоненты строго определены.
Так что русский такой же лего, только сложнее, может.
DSense 26 июн 2026 в 09:10
Ярила  •  На сайте 7 лет
1
Цитата (Tormund18 @ 25 июн 2026 в 00:30)
Бедные иностранцы, как вспомнишь про падежи, склонения..

А прикинь каково изучающим табасаранский язык(50 падежей)...
Или венгерский(30 падежей)...
Да хотя бы финский или эстонский(по 15 падежей)...
Русский с его 6-ю падежами...
Эмил 26 июн 2026 в 12:39
Ярила  •  На сайте 10 лет
0
А могла додуматься и до пять яйцов.В каждом языке есть правила и исключения.Неужели не ясно ?
MHi 26 июн 2026 в 12:41
Ярила  •  На сайте 10 лет
0
Пять Илий, пять самос.

Размещено через приложение ЯПлакалъ
aerobiker 26 июн 2026 в 12:52
Шутник  •  На сайте 3 месяца
1
В России климат, дороги, язык предназначены в первую очередь для уничтожения врагов, а уж потом всё остальное.
jokerbleck 26 июн 2026 в 12:54
Приколист  •  На сайте 15 лет
0
Цитата (shrec @ 25.06.2026 - 00:26)
кочерга веселей

Гочерëг, худи тут думать

Размещено через приложение ЯПлакалъ
immortal666666 26 июн 2026 в 12:55
Ярила  •  На сайте 16 лет
1
Почему дорога раз-два-яица?

Размещено через приложение ЯПлакалъ
Shveden 26 июн 2026 в 13:02
Весельчак  •  На сайте 13 лет
1
Цитата (,)
Цитата (6A3APOBO3 @ 25.06.2026 - 00:55)
Пять Илей, пять самсей, пять кочергей. Все татары кроме я.

Одна палка-два струна, я хозяин вся страна.

Кто стучится в дверь моя?
Видишь дома нет никто?

Осень наступила, высохли цветы, мне никто не нужен, кроме ты.
Понравился пост? Ещё больше интересного в ЯП-Телеграм и ЯП-Max!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.
5 Пользователей читают эту тему (1 Гостей и 1 Скрытых Пользователей) Просмотры темы: 13 219
3 Пользователей: Гобер, Mostag, Migel34
Страницы: 1 ...  4 5 6 7  ОТВЕТИТЬ НОВАЯ ТЕМА

 
 

Активные темы



Наверх