Войти
Регистрация
Спроси ai-bota
В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
Показать больше
Показать меньше
opamaks23
27.04.2022 00:09 •
Информатика
Команда Області завдань для зміни загальної структури елементів документу:
Показать ответ
Ответ:
chcuvivhcyxu
19.02.2020 17:56
#include <cstdio>
#include <cstring>
int
main(void)
{
enum
{
MAX_BUF_SIZE = 100
};
char buf[MAX_BUF_SIZE];
scanf("%s", buf);
int n = strlen(buf);
int shift = 0;
for (int i = 0; i < n; i++) {
shift = (shift + buf[i] - '0') % 3;
}
shift = 3 - shift;
int sel = -1;
for (int i = 0; i < n; i++) {
int tmp = buf[i] - '0' + shift;
if (0 <= tmp && tmp <= 9) {
sel = i;
break;
}
}
if (sel == -1) {
for (int i = n - 1; i >= 0; i++) {
int tmp = buf[i] - '0' - shift;
if (0 <= tmp && tmp <= 9) {
buf[i] -= shift;
break;
}
}
} else {
buf[sel] += shift;
while ('0' <= buf[sel] + 3 && buf[sel] + 3 <= '9') {
buf[sel] += 3;
}
}
printf("%s\n", buf);
return 0;
}
0,0
(0 оценок)
Ответ:
Rednegel
19.02.2020 17:56
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main()
{
int sum = 0;
vector<int> v;
string s;
cin >> s;
for (int i = 0; i < s.size(); ++i) {
v.push_back((int)s[i] - 49);
++sum; ++v[i];
}
int z = sum % 3; z = 3 - z;
{
int i = 0;
while (i <= v.size() && (v[i] + z) > 9) {
++i;
}
if (i >= v.size()) {
if (z == 3) {
v[v.size() - 1] -= 3;
} else {
v[v.size() - 1] -= (3 + z);
}
} else {
v[i] += z;
while ((v[i] + 3) < 9) {
v[i] += 3;
}
}
}
for (int i = 0; i < v.size(); ++i) {
cout << v[i];
}
return 0;
}
0,0
(0 оценок)
Популярные вопросы: Информатика
ruslangusen
09.03.2020 07:12
Написать программу pascal abc, ! ) вводится 4-х значное число. : 1) вывести число это же число, в котором меняется местами 1 и 2 цифра, 3 и 4 цифра, например 1234=2143. 2)...
Danya294
08.07.2021 19:54
F(A, B) =не A v не B^A - построить логическую схему ...
akvilon76
27.08.2021 06:40
Как называется программа для поиска ошибок в других программах...
Qwerty098765432111
06.07.2022 05:42
Информатика ответьте это ВЫКЛАДЫВАЮ 3 РАЗ...
Gora583Иришка
31.01.2023 02:35
Дано текст а знайти в ньому кількість пробілів...
volechka1
29.07.2021 17:07
Знайти площу кола з відомим діаметром д...
V4SLA
08.06.2020 15:13
(а+б)(а-б) потрібно зробити блок-схему алгоритму...
ChocoPie12
01.04.2023 13:12
Вопросы: 1. выберите один правильный вариант объявления целой переменной n. l integer n; l int n; l n: integer; l var n: integer; l var n: int; 2. выберите идентификатор,...
Azaliya1111111
13.02.2023 05:41
Работа в excel. не знаю как делать подскажите как объясните надо.сама : магазин по продажи компьютерных аксессуаров продает товары, указанные в прайс-листе (не менее 15 аксессуаров)....
ayazhka2
13.02.2023 05:41
На javascript надо написать первое : вывести результат перемножения двух введенных чисел. второе : вывести результат сложения двух введенных чисел....
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку
О НАС
О нас
Блог
Карьера
Условия пользования
Авторское право
Политика конфиденциальности
Политика использования файлов cookie
Предпочтения cookie-файлов
СООБЩЕСТВО
Сообщество
Для школ
Родителям
Кодекс чести
Правила сообщества
Insights
Стань помощником
ПОМОЩЬ
Зарегистрируйся
Центр помощи
Центр безопасности
Договор о конфиденциальности полученной информации
App
Начни делиться знаниями
Вход
Регистрация
Что ты хочешь узнать?
Спроси ai-бота
#include <cstring>
int
main(void)
{
enum
{
MAX_BUF_SIZE = 100
};
char buf[MAX_BUF_SIZE];
scanf("%s", buf);
int n = strlen(buf);
int shift = 0;
for (int i = 0; i < n; i++) {
shift = (shift + buf[i] - '0') % 3;
}
shift = 3 - shift;
int sel = -1;
for (int i = 0; i < n; i++) {
int tmp = buf[i] - '0' + shift;
if (0 <= tmp && tmp <= 9) {
sel = i;
break;
}
}
if (sel == -1) {
for (int i = n - 1; i >= 0; i++) {
int tmp = buf[i] - '0' - shift;
if (0 <= tmp && tmp <= 9) {
buf[i] -= shift;
break;
}
}
} else {
buf[sel] += shift;
while ('0' <= buf[sel] + 3 && buf[sel] + 3 <= '9') {
buf[sel] += 3;
}
}
printf("%s\n", buf);
return 0;
}
#include <string>
#include <vector>
using namespace std;
int main()
{
int sum = 0;
vector<int> v;
string s;
cin >> s;
for (int i = 0; i < s.size(); ++i) {
v.push_back((int)s[i] - 49);
++sum; ++v[i];
}
int z = sum % 3; z = 3 - z;
{
int i = 0;
while (i <= v.size() && (v[i] + z) > 9) {
++i;
}
if (i >= v.size()) {
if (z == 3) {
v[v.size() - 1] -= 3;
} else {
v[v.size() - 1] -= (3 + z);
}
} else {
v[i] += z;
while ((v[i] + 3) < 9) {
v[i] += 3;
}
}
}
for (int i = 0; i < v.size(); ++i) {
cout << v[i];
}
return 0;
}