В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
Noksiwin
Noksiwin
23.05.2022 08:42 •  Информатика

Напишите программу на с++, без всяких массивов динамических. Просто через стринг и гетлайн В операционной системе Windows путь к файлу состоит из имени логического диска и названий каталогов, в которых находится этот файл. Части пути разделены знаками "\" (обратный слэш). Требуется разбить заданный путь к файлу на части — имя диска и названия каталогов.

Входные данные
Входная строка содержит путь к файлу.

Выходные данные
Программа должна вывести имя диска и названия всех каталогов, составляющих путь. Каждый элемент выводится в отдельной строке.

Примеры
входные данные
C:\WINDOWS\MEDIA\work.wav
выходные данные
C:
WINDOWS
MEDIA
work.wav

Показать ответ
Ответ:
alexandrapavlov1
alexandrapavlov1
25.10.2022 23:33
Var
  d: integer;
  i, k, n: longint;
  flag: boolean;

begin
  Write('Введите верхнюю границу для счета: '); Readln(k);
  for i := 1 to k do
  begin
    n := i;
    repeat
      d := n mod 10;
      if d > 0 then flag := ((i mod d) <> 0) else flag := true;
      if (not flag) then n := (n div 10)
    until (flag or (n = 0));
    if n = 0 then Write(i, ' ')
  end;
  Writeln
end.

Тестовое решение:
Введите верхнюю границу для счета: 1237
1 2 3 4 5 6 7 8 9 11 12 15 22 24 33 36 44 48 55 66 77 88 99 111 112 115 122 124 126 128 132 135 144 155 162 168 175 184 212 216 222 224 244 248 264 288 312 315 324 333 336 366 384 396 412 424 432 444 448 488 515 555 612 624 636 648 666 672 728 735 777 784 816 824 848 864 888 936 999 1111 1112 1113 1115 1116 1122 1124 1128 1131 1144 1155 1164 1176 1184 1197 1212 1222 1224 1236
0,0(0 оценок)
Ответ:
Лилия515
Лилия515
03.05.2023 13:28
Обозначу КД = множество результатов поиска по запросу Конан Дойль, БС = Г. Бичер-Стоу, ДД = Джером К. Джером. Кроме того, пересечение множеств обозначим *, объединение +.

A. КД * БС * ДД
Б. КД + БС + ДД
В. КД + БС * ДД
Г. БС * ДД

Сравнивать количества элементов множеств можно, используя трюк: количества элементов соотносятся точно также, как и записанные мною выше выражения, в которых вместо КД, БС, ДД записаны какие-то числа между нулем и единицей. Можно даже просто подставить, например, КД = БС = ДД = 0,1 и посмотреть, что получится.

А. 0,1 * 0,1 * 0,1 = 0,001
Б. 0,1 + 0,1 + 0,1 = 0,3
В. 0,1 + 0,1 * 0,1 = 0,11
Г. 0,1 * 0,1 = 0,01

Б > В > Г > А


Для справедливости всего, что написано, в каждом выражении каждая переменная должна встречаться не более, чем по одному разу.
Трюком можно пользоваться, если известно, что при любых значениях переменных порядок не будет меняться (это условие эквивалентно тому , что задача при любых количествах элементов и любых соотношениях будет разрешима, и ответ не меняется)
Например, рассмотрим пример, который явно не определен однозначно: сравним количество результатов по запросу (A. Конан Дойл & Г. Бичер-Стоу) и (Г. Бичер-Стоу & Джером К. Джером). Следуя методу, надо сравнить при всех возможных 0 < КД, БС, ДД < 1 выражения:
КД * БС и БС * ДД
При разных выборах значений результат будет разным, например:
- КД = БС = 0,1; ДД = 0,2:    0,01 < 0.02
- КД = БС = ДД = 0,1:       0,01 = 0,01
- КД = 0,2; БС = ДД = 0,1:    0,02 > 0.01
Это означает, что без дополнительных условий задача не разрешима.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота