Завдання про щасливе квитку

Всі знають, що «щасливим» називається квиток, у якого сума перших трьох цифр дорівнює сумі друге трьох цифр. Розглянемо, як вирішується завдання визначення щастя в MS Excel і в середовищі програмування.

Конструюємо формулу в електронній таблиці

Завдання: У осередок електронної таблиці зберігається шестизначне число, необхідно написати формулу, яка виведе одне з двох слів «щасливе» або «на жаль»

Для визначення щастя необхідно виділити кожну цифру в цьому числі. Нам допоможе текстова функція = ПСТР () вона виділять з рядка довільну кількість знаків. Функція має три аргументи: вихідний текст, початкова позиція і кількість видобутих знаків.

Завдання про щасливе квитку

У прикладі з осередку A1, витягується 1 символ починаючи з третьої позиції.

Тепер застосувавши цю формулу шість разів ми отримаємо в шести осередках окремі цифри вихідного числа. Для визначення щастя нам знадобиться логічна функція = ЕСЛИ (). У функції три аргументи: логічне вираз, значення, яке повертається (виводиться) в разі якщо вираз істинний, і значення яке повертається в разі брехні.


У прикладі логічне вираз повертає «щасливий» якщо сума перших трьох осередків дорівнює сумі друге трьох чисел,
і «на жаль» в зворотному випадку.

Об'єднаємо ці два прийоми, і отримаємо таку функцію:


Формула об'єднана в єдину осередок.

пишемо програму

Напишемо програму, яка підрахує кількість щасливих чисел.

Принцип цієї програми багато в чому схожий, але є і принципова відмінність. У програмі не використовуються рядкові функції, тут номер - це саме число. Використовуючи операції цілочисельного ділення ми здобуваємо кожен розряд числа.

Звертаю вашу увагу, програма правильно працює в Pascal ABC і не вірно в TurboPascal а все тому, що тип integer в TurboPascal зберігається в 16 осередках пам'яті і максимальне значення, яке може прийняти

Є принципово інше рішення:

У шести вкладених цифрах перебираються всі можливі варіанти щестізначних чисел. Але результат виконання програми буде тим же самим.

За цей матеріал з'явився завдяки питання невідомої дівчини Анастасії з Новосибірська. Вона звернулася до мене з питанням. За натхнення їй спасибі)

Схожі статті