/**
* @file lab5.1.cpp
*@author Ткаченко Є.С., гр. 515і
*@date 21 квітня 2023
*@brief Лабораторна робота № 5, варіант 7
*
* Завдання 1. Застосування вказівників.
*/
#include <stdio.h>
#include <locale.h>
int parse_tire(long long tire, int* width, int* profile, int* diameter, int* week, int* year) {
// Перевірка на кількість цифр
if (tire < 10000000000 || tire > 99999999999) {
return 0;
}
*width = tire / 100000000;
*profile = tire % 100000000 / 1000000;
*diameter = tire % 1000000 / 10000;
*week = tire % 10000 / 100;
*year = tire % 100;
// Перевірка коректності тижня та року
if (*week < 1 || *week > 52 || *year < 0 || *year > 99) {
return 0;
}
return 1;
}
int main() {
setlocale(LC_ALL, "Ukr");
long long tire;
int width, profile, diameter, week, year;
printf("Введiть маркування шини: ");
scanf("%lld", &tire);
if (parse_tire(tire, &width, &profile, &diameter, &week, &year)) {
printf("Ширина: %dмм\n", width);
printf("Висота профiлю: %d%%\n", profile);
printf("Дiаметр покришки: %d дюймiв\n", diameter);
printf("Тиждень виробництва: %d тиждень\n", week);
printf("Рiк виробництва: 20%d рiк\n", year);
}
else {
printf("Некоректне маркування шини\n");
}
return 0;
}