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

Привет с задачей (язык Python) Задача 3. Файлы
В одной IT-компании существует негласный закон об именовании текстовых документов:
Название файла не должно начинаться на один из специальных символов: @№$%^&*().
Файл заканчивается расширением .txt или .docx.
Напишите программу, которая получает на вход полное название файла и проверяет его по этим правилам.

Пример 1:
Название файла: @example.txt
Ошибка: название начинается на один из специальных символов

Пример 2:
Название файла: example.ttx
Ошибка: неверное расширение файла. Ожидалось .txt или .docx

Пример 3:
Название файла: example.txt
Файл назван верно.

👇
Ответ:
АааLoo
АааLoo
25.02.2020

_filename = input()

if _filename[0] in "@№$%^&*().":

   print("название начинается на один из специальных символов")

elif _filename[-4:] != '.txt' and _filename[-5:] != '.docx':

   print("неверное расширение файла. Ожидалось .txt или .docx")

else:

   print("Файл назван верно.")

4,4(61 оценок)
Ответ:
ДашаЛис56
ДашаЛис56
25.02.2020

Объяснение:

file_name = input('Введите название файла :')

if  file_name.startswith('@№$%^&*()') :

 print('Ошибка: название начинается на один из специальных символов')

elif not file_name.endswith('.txt') or file_name.endswith('.docx'):

 print('Ошибка: неверное расширение файла. Ожидалось .txt или .docx')

else:

 print('Название файла: ',file_name)

 print('Файл назван верно.')

4,5(14 оценок)
Открыть все ответы
Ответ:
1)
#include <iostream>
using namespace std;

int main()
{
    double s, s1, s2, s3;
    cout << "1 тенге (KZT) = 0.19 RUB" << "\n";
    cout << "1 тенге (KZT) = 0.002743 EUR" << "\n";
    cout << "1 тенге (KZT) = 0.002995 USD" << "\n";
    cout << "Введите сумму в тенге:", cin >> s, cout << "\n";
    s1 = s*0.19;
    s2 = s*0.002743;
    s3 = s*0.002995;
    cout << s << " тенге (KZT) = " << s1 << " RUB, " << s2 << " EUR, " << s3 << " USD" << "\n";
    return 0;
}

Пример:
1 тенге (KZT) = 0.19 RUB
1 тенге (KZT) = 0.002743 EUR
1 тенге (KZT) = 0.002995 USD
Введите сумму в тенге:20000
20000 тенге (KZT) = 3800 RUB, 54.86 EUR, 59.9 USD

2 a)
#include <iostream>
using namespace std;

int main()
{
    int a = 5;
    int b = 4;
    int c;
    c = a;
    a = b;
    b = c;
    cout << "a = " << a << ", b = " << b << "\n";
    return 0;
}

Результат:
a = 4, b = 5

2 b)
#include <iostream>
using namespace std;

int main()
{
    int a = 5;
    int b = 4;
    a = a+b;
    b = a-b;
    a = a-b;
    cout << "a = " << a << ", b = " << b << "\n";
    return 0;
}
a = 4, b = 5

3)
#include <iostream>
using namespace std;

int main()
{
    int a, b, c;
    a = 5;
    b = a+3;
    c = a+b;
    cout << "a = " << a << ", b = " << b << ", c = " << c << "\n";
    return 0;
}

Результат:
a = 5, b = 8, c = 13

4)
#include <iostream>
using namespace std;

int main()
{
    int p1=10;
    int p2=15;
    int p3=12;
    int k1, k2, k3, s;
    cout << "k1 = ", cin >> k1, cout << "\n";
    cout << "k2 = ", cin >> k2, cout << "\n";
    cout << "k3 = ", cin >> k3, cout << "\n";
    s = p1*k1+p2*k2+p3*k3;
    cout << "Общая стоимость покупок = " << s << "\n";
    return 0;
}
k1 = 2
k2 = 5
k3 = 3
Общая стоимость покупок = 131
4,5(21 оценок)
Ответ:
Colnkor
Colnkor
25.02.2020
Если ввести X или Y значительно больше чем Z то программа на втором или тертьем условии выдаст false и закончит свою работу ничего не написав. Например: если указать X = 10 , Y = 2, Z = 3; то на первом условии будет true, потому что 10 +2 > 3 , но на третьем условии выдаст false потому что 2+3 < 10 но так как ничего не прописано на этот случай программа просто закончит свою работу.
Что бы исправить этот баг необходимо все условия свести в одно: 
if ((x + y > z)and (x + z > y) and (y + z > x) ) then 
   writeln('треугольник построить можно')
else  
 writeln('треугольник построить нельзя');
end.

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