М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
mawa18
mawa18
15.01.2020 23:07 •  Информатика

Встране курятии решили провести перепись курятников . каждому курятнику было решено присвоить идентификатор , состоящий из пяти десятичных цифр с условием , что их сумма равна девяти ( например , подойдёт номер 11214 ) . оказалось , что на всех номеров не хватило . сколько минимум курятников построено в курятии ? решение .

👇
Ответ:
Masha2017thebest
Masha2017thebest
15.01.2020

1246


4,8(71 оценок)
Открыть все ответы
Ответ:
GorkiyShokolaD
GorkiyShokolaD
15.01.2020
Using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

internal static class Program
{
    private const string glasnye_ = "aeiouy";
    private const string soglasnye_ = "bcdfghjklmnpqrstvwxz";

    private static void Main()
    {
        try
        {
            Console.WriteLine("Введите строку слов (любые символы будут считаться разделителями)");
            var s = Console.ReadLine();
            Console.WriteLine($"Гласных больше чем согласных:\n {Task1(s).Aggregate("", (current, t) => current + t.ToUpper() + " ")}");
            Console.WriteLine();
            Console.WriteLine($"Гласных больше чем согласных:\n {Task1Regex(s).Aggregate("", (current, t) => current + t.ToUpper() + " ")}");
            Console.ReadLine();
        }
        catch(Exception e)
        {
            Console.WriteLine(e);
            Console.ReadLine();
        }
    }

    private static IEnumerable<string> Task1(string s)
    {
        Console.ForegroundColor = ConsoleColor.Cyan;
        Console.WriteLine("Без регулярных выражений");

        var words = s.Split(new[] {' ', '-', ',', '.', '*', ':', ';', '_'}, StringSplitOptions.RemoveEmptyEntries).ToList();

        var sb = new StringBuilder();
        for (var i = 0; i < words.Count; i++)
            sb.AppendLine($"Слово[{i}] = {words[i].ToUpper()}");

        Console.Write(sb.ToString());

        var result = new List<string>();

        foreach (var word in words)
        {
            var k = 0;
            foreach (var c in word.ToLower().ToCharArray())
            {
                k += glasnye_.Contains(c) ? 1 : 0;
                k -= soglasnye_.Contains(c) ? 1 : 0;
            }

            if (k > 0)
                result.Add(word);
        }

        return result;
    }

    private static IEnumerable<string> Task1Regex(string s)
    {
        Console.ForegroundColor = ConsoleColor.Green;
        Console.WriteLine("С регулярными выражениями");

        var ms = Regex.Matches(s, @"[A-z]+", RegexOptions.IgnoreCase);

        var sb = new StringBuilder();
        for (var i = 0; i < ms.Count; i++)
            sb.AppendLine($"Слово[{i}] = {ms[i].Value.ToUpper()}");

        Console.Write(sb.ToString());

        var result = new List<string>();
        for (var i = 0; i < ms.Count; i++)
        {
            var v = ms[i].Value;
            var k = Regex.Matches(v, $"[{glasnye_}]", RegexOptions.IgnoreCase).Count;
            k -= Regex.Matches(v, $"[{soglasnye_}]", RegexOptions.IgnoreCase).Count;
            if (k > 0)
                result.Add(v);
        }

        return result;
    }
}
4,6(7 оценок)
Ответ:
DisasterYt
DisasterYt
15.01.2020
Сначала переведём в десятичную систему счисления, а затем в остальные из неё.

В качестве цифр шестнадцатеричной системы счисления используются цифры от 0 до 9 и латинские буквы от A до F. Буквы A = 10, B = 11, C = 12,
D = 13, E = 14, F = 15.

B25₁₆ = 11*16²+2*16¹+5*16° = 2816+32+5 = 2853₁₀

2853/2 = 1426 (целое частное) + (1) - остаток
1426/2 = 713 + (0)
713/2 = 356 + (1) 
356/2 = 178 + (0) 
178/2 = 89 + (0) 
89/2 = 44 + (1) 
44/2 = 22 + (0) 
22/2 = 11 + (0) 
11/2= 5 + (1) 
5/2 = 2 + (1) 
2/2 = 1 + (0) 
1

Поднимаемся снизу вверх записывая слева направо.

B25₁₆ = 101100100101₂

2853/8 = 356 + (5)
356/8 = 44 + (4)
44/8 = 5 + (4)
5

B25₁₆ = 5445₈

C3₁₆ = 12*16¹+3*16⁰ = 192+3 = 195₁₀

195/2 = 97 + (1)
97/2 = 48 + (1)
48/2 = 24 + (0)
24/2 = 12 + (0)
12/2 = 6 + (0)
6/2 = 3 + (0)
3/2 = 1 + (1)
1

C3₁₆ = 11000011₂

195/8 = 24 + (3)
24/8 = 3 + (0)
3

C3₁₆ = 303₈
4,5(27 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ