Ask___
Advice
Главная
О сервисе
О нас
Правила пользования сайтом
Авторское право
Политика конфиденциальности
Ключ для indexNow
Скрипт от рекламы
Задать вопрос
Искать
Главная
Информатика
Ответы на вопрос
saryba
04.06.2021
?>
решить циклические алгоритмы
Информатика
Ответить
Ответы
priexali
04.06.2021
#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;
}
kirik197308
04.06.2021
#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;
}
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
решить циклические алгоритмы
Ваше имя (никнейм)*
Email*
Комментарий*
Согласен с
политикой конфиденциальности
Отправить вопрос
Популярные вопросы в разделе
Запишите значения элементов массива, сформированного следующим образом.
Автор: dokmak140652
Найдите в законе РФ «Об информации, информатизации и защите информации» информацию об ответственности за правонарушения в сфере информации, информационных технологий и защите информации.
Автор: Romanovna-yana
Как сделать новое отступление в word-e при этом не затрагивая старый абзац? Суть вопроса такова: мне нужно создать новый текст (МОСКВА 2020) с выравниванием по центру, но курсор не "отлипает" от стар...
Автор: Adabir20156806
Вспомните о вычислителе , умеющем только умножать на 2 и прибавлять 1 .разрабатывать для него рациональные алгоритмы будет значительно проще, если воспользоваться следующей блок-схемой : используя э...
Автор: dushechkin2
Посчитать объем книги если известно что в ней 500 страниц и на каждой странице 2500 символов
Автор: dubaiexport
Составьте программу которая вычисляет произведение нечетных чисел от 1 до 20
Автор: Владислав-Аветисян217
Составь циклический алгоритм выполняя который , можно изобразить снегопад., не рисую новых снежинок.используй команды : 1. выделить снежинку 2. копировать. составь алгоритм, поясняющий, как выпо...
Автор: isinyakin
Перевести числа 1000000, 11010, 1010, 11100101, 1100, 111 1101101 в десятичную систему
Автор: Valerevna Tuzova
Расшифровать ипксое_тсмначи_оен_гдела с шифра столбцовой перестановки
Автор: Вадим
Перевод фото сказахского на русский
Автор: Andreevich440
Анализ слов, написанных на парте, показал, что сообщение «Это слово начинается с гласной буквы» составляет 3 бита. Число таких слов – восьмая часть от общего количества слов на парте. Сколько всего...
Автор: Ladiga_Evgenii886
Задан одномерный массив целых чисел. вычислить сумму значений элементов, значения которых меньше половины значения максимального элемента чисел, но больше половины минимального элемента.
Автор: tatiyanabe2013727
Рассчитай объём видеопамяти, необходимой для хранения графического изображения, занимающего весь экран монитора с разрешением 640×288 и палитрой из 65536 цветов.
Автор: Сопова
Подсчитать в килобайтах количество информации в тексте, если текст состоит из 400 символов, а мощность используемого алфавита - 64 символа.
Автор: mukbidc
Как расставить 5стульев , чтобы вдоль каждой стены стояло по 2стула?
Автор: zolotayaoxana1982
▲
#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;
}