• 1
    Eingabe und Ausgabe
    • Aufgaben
  • 2
    Bedingungen
    • Aufgaben
  • 3
    For-Schleife
    • Aufgaben
  • 4
    Zeichenketten
    • Aufgaben
  • 5
    While-Schleife
    • Aufgaben
  • 6
    Listen
    • Aufgaben
  • 7
    2D-Arrays
    • Aufgaben
  • 8
    Wörterbücher
    • Aufgaben
  • 9
    Mengen
    • Aufgaben
  • 10
    Funktionen und Rekursion
    • Aufgaben
  • к

Lektion 3. FOR cycle

Schwierigkeit:

Aufgabe«Name auf dem Werbeschild»

💻 Python

Du hast einen Job in der kreativen Werbeagentur "creativeplus" bekommen. Deine erste Aufgabe — Erstelle einen Rechner zur Berechnung der Kosten für die Platzierung von Text auf einer Werbetafel. Der Agenturleiter hat ein ausgeklügeltes Preissystem entwickelt, um Kunden dazu zu animieren, „klangvolle“ und „sichere“ Namen zu wählen.

Regeln zur Berechnung der Kosten:

  1. Grundkosten:   Die Kosten für ein Zeichen werden vom Benutzer eingegeben.
  2. Leerzeichen:   Sie werden nicht berechnet, sie sind kostenlos.
  3. Vokalaufschlag:   Vokale (Russisch und Englisch, in beliebiger Groß-/Kleinschreibung) gelten als „aufmerksamkeitsstärker“, daher sind ihre Kosten 50 % höher als der Basispreis.
  4. Verbotene Zeichen:   Die Zeichen   '@'   und   '#'   sind aus technischen Gründen für die Verwendung verboten. Wenn mindestens eines davon im Namen gefunden wird, ist die Berechnung unmöglich und das Programm soll eine Fehlermeldung ausgeben.
  5. Glückssymbol:   Das Ausrufezeichen ( '!' ) ist Teil einer Sonderaktion. Es selbst ist kostenlos, aber wenn es im Namen vorkommt, wird auf   den endgültigen   Preis der gesamten Beschriftung ein Rabatt von 10 % gewährt.

Du musst ein Programm schreiben, das den Benutzer nach dem Namen und den Grundkosten pro Zeichen fragt und dann den Gesamtpreis unter Berücksichtigung aller Regeln berechnet und ausgibt.

Eingabeformat

der Name für das Werbeschild (Zeichenkette)
die Grundkosten eines Symbols (Gleitkommazahl)

Ausgabeformat

Die Gesamtkosten werden auf zwei Nachkommastellen angegeben oder eine Fehlermeldung ausgegeben.

Beispiel

Eingabe

Der beste Preis!
100.0

Ausgabe

Endgültige Kosten: 1125.00 Rubel.

Hinweis

There will be no clue here, decide for yourself!

main.py
Test 1
Test 2
Test 3
Test 4
Test 5
Test 6
Test 7
Test 8
Test 9
Test 10
Entwicklerlösung
# Получаем название для рекламы и базовую стоимость одного символа
ad_text = input()
base_price = float(input())

# Инициализируем переменные для итоговой стоимости и флагов
total_cost = 0.0
has_forbidden_char = False
has_discount_char = False

# Список гласных букв в нижнем регистре (русские и английские)
vowels = "аеёиоуыэюяaeiou"

# Перебираем каждый символ во введенном тексте с помощью цикла for
for char in ad_text:
    # Проверяем, не является ли символ запрещенным
    if char == '@' or char == '#':
        has_forbidden_char = True  # Устанавливаем флаг, что найден запрещенный символ
        break  # Немедленно прерываем цикл, дальнейший расчет бессмысленен

    # Если символ - пробел, он бесплатный, переходим к следующему символу
    if char == ' ':
        continue

    # Если символ - восклицательный знак, он бесплатный, но дает право на скидку
    if char == '!':
        has_discount_char = True  # Устанавливаем флаг скидки
        continue

    # Рассчитываем стоимость текущего символа
    current_char_price = base_price

    # Проверяем, является ли символ гласной (приведя его к нижнему регистру)
    if char.lower() in vowels:
        current_char_price = current_char_price * 1.5  # Применяем наценку 50%

    # Добавляем стоимость текущего символа к общей стоимости
    total_cost = total_cost + current_char_price

# После цикла проверяем, был ли найден запрещенный символ
if has_forbidden_char:
    print("Ошибка: в названии содержатся запрещенные символы.")
else:
    # Если запрещенных символов не было, проверяем, нужно ли применить скидку
    if has_discount_char:
        total_cost = total_cost * 0.9  # Применяем скидку 10%

    # Выводим итоговую стоимость, отформатированную до двух знаков после запятой
    print(f"Итоговая стоимость: {total_cost:.2f} руб.")

🎉 Glückwunsch! 🎉

Du hast die Aufgabe hervorragend gelöst! Es war schwierig, aber du hast die Lösung gefunden. Du bist dem Meister einen Schritt näher! Mach weiter so.

AD

Werbung

red-snake blue-snake green-snake

Führe deinen Code aus...

KI-Assistent

Hallo! Ich bin dein Programmier-Assistent. Stelle mir beliebige Fragen zu Python — ich erkläre Funktionen, Methoden und helfe dir bei der aktuellen Aufgabe!