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

Перевести код с pascal на c# program glas; uses crt; type t_str=array[1..10] of string[80]; t_set=set of char; var s,new: t_str; alf,gls,sogl: t_set; kol,i,j,kolg,kolsg,schet: byte; prom: string; begin clrscr; textcolor(green); schet: =1; kolg: =0; kolsg: =0; alf: =['a'..'z']; gls: =['a','e','i','o','u','y']; sogl: =['b','c','d','f','g','h','j','k', 'l','m','n','p','q','r','s','t','v','w','x']; writeln; writeln(' vvedite kol-vo slov(ne > 10 ! ): '); readln(kol); writeln; textcolor(red); writeln(' vvodim tolko zaglavnimi ! '); textcolor(green); writeln; for i: =1 to kol do begin writeln(' vvod ',i,'-go slova: '); readln(s[i]); prom: =s[i]; kolg: =0; kolsg: =0; for j: =1 to length(prom) do begin if (prom[j] in gls) then kolg: =kolg+1 else kolsg: =kolsg+1; end; if kolg> kolsg then begin new[schet]: =prom; schet: =schet+1; end; end; clrscr; writeln; writeln(' ishodnii massiv slov: '); writeln; for i: =1 to kol do begin write(' ',s[i]); end; readkey; writeln; writeln; writeln(' slova gde > glas.'); writeln; for i: =1 to schet do begin write(' ',new[i]); end; readkey; end.

👇
Ответ:
ghvcn
ghvcn
02.10.2021
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,4(97 оценок)
Открыть все ответы
Ответ:
AnnYtAa1
AnnYtAa1
02.10.2021

1) Как построить дом?

1) Нужно приобрести материалы для стройки

2) Купить территорию, где строить

3) Заложить фундамент

4) Начать строить пол, потом стены, не забывать всё укреплять

5) поставить окна

6) сделать утепление

7) поставить двери, замки, сеентехнику, провести электричество

8) построить крышу

9) наклееть обои, и покрасить стены

10) поставить мебель

11) ГОТОВО!

2) Как покрасить крышу дома?

1) купить краску

2) развести краску

3) залесть на крышу

4) начать красить с дальнего угла крыши от лестницы

5) когда докрасишь, дать просохнуть

6) повторяешь шаги 4 и 5 пару раз

7) ГОТОВО!

3) Как заложить фундамент?

я не знаю

4,4(2 оценок)
Ответ:
Саня1585
Саня1585
02.10.2021

Числа Фибоначчи: циклом и рекурсией

Числа Фибоначчи – это ряд чисел, в котором каждое следующее число равно сумме двух предыдущих: 1, 1, 2, 3, 5, 8, 13, ... . Иногда ряд начинают с нуля: 0, 1, 1, 2, 3, 5, ... . В данном случае мы будем придерживаться первого варианта.

Формула:

F1 = 1

F2 = 1

Fn = Fn-1 + Fn-2

Пример вычисления:

F3 = F2 + F1 = 1 + 1 = 2

F4 = F3 + F2 = 2 + 1 = 3

F5 = F4 + F3 = 3 + 2 = 5

F6 = F5 + F4 = 5 + 3 = 8

...

Вычисление n-го числа ряда Фибоначчи с цикла while

Присвоить переменным fib1 и fib2 значения двух первых элементов ряда, то есть присвоить переменным единицы.

Запросить у пользователя номер элемента, значение которого он хочет получить. Присвоить номер переменной n.

Выполнять следующие действия n - 2 раз, так как первые два элемента уже учтены:

Сложить fib1 и fib2, присвоив результат переменной для временного хранения данных, например, fib_sum.

Переменной fib1 присвоить значение fib2.

Переменной fib2 присвоить значение fib_sum.

Вывести на экран значение fib2.

Примечание. Если пользователь вводит 1 или 2, тело цикла ни разу не выполняется, на экран выводится исходное значение fib2.

fib1 = 1

fib2 = 1

n = input("Номер элемента ряда Фибоначчи: ")

n = int(n)

i = 0

while i < n - 2:

   fib_sum = fib1 + fib2

   fib1 = fib2

   fib2 = fib_sum

   i = i + 1

print(fib2)

Компактный вариант кода:

fib1 = fib2 = 1

n = int(input("Номер элемента ряда Фибоначчи: ")) - 2

while n > 0:

   fib1, fib2 = fib2, fib1 + fib2

   n -= 1

print(fib2)

Вывод чисел Фибоначчи циклом for

В данном случае выводится не только значение искомого элемента ряда Фибоначчи, но и все числа до него включительно. Для этого вывод значения fib2 помещен в цикл.

fib1 = fib2 = 1

n = int(input())

if n < 2:

   quit()

print(fib1, end=' ')

print(fib2, end=' ')

for i in range(2, n):

   fib1, fib2 = fib2, fib1 + fib2

   print(fib2, end=' ')

print()

Пример выполнения:

10

1 1 2 3 5 8 13 21 34 55  

Рекурсивное вычисление n-го числа ряда Фибоначчи

Если n = 1 или n = 2, вернуть в вызывающую ветку единицу, так как первый и второй элементы ряда Фибоначчи равны единице.

Во всех остальных случаях вызвать эту же функцию с аргументами n - 1 и n - 2. Результат двух вызовов сложить и вернуть в вызывающую ветку программы.

def fibonacci(n):

   if n in (1, 2):

       return 1

   return fibonacci(n - 1) + fibonacci(n - 2)

print(fibonacci(10))

Допустим, n = 4. Тогда произойдет рекурсивный вызов fibonacci(3) и fibonacci(2). Второй вернет единицу, а первый приведет к еще двум вызовам функции: fibonacci(2) и fibonacci(1). Оба вызова вернут единицу, в сумме будет два. Таким образом, вызов fibonacci(3) возвращает число 2, которое суммируется с числом 1 от вызова fibonacci(2). Результат 3 возвращается в основную ветку программы. Четвертый элемент ряда Фибоначчи равен трем: 1 1 2 3.

Объяснение:

4,6(40 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ