Arsen0708
?>

Надо! написать на python решение : "вводится число n. если это число трехзначное и кратно 3 то выведите "да", в противном случае "нет""

Информатика

Ответы

artemy682719
N = int(input("N = "))
if (99 < N and N < 1000 and N % 3 == 0):
  print("Да")
else:
  print("Нет")
keykov35

#include <iostream>

#include <cmath>

using namespace std;

signed main()

{

   setlocale(LC_ALL, "Rus");

   int N;

   bool haveZero = false, haveOne = false;

   cin >> N;

   N = abs(N);

   while(N>0){

       if(N % 10 == 0)

           haveZero = true;

       if(N % 10 == 1)

           haveOne = true;

       N /= 10;

   }

   cout << "Наличие нуля: " << boolalpha << haveZero << endl;

   cout << "Наличие единицы в числе: " << boolalpha << haveOne << endl;

   return 0;

}

i7aster26

Объяснение: всё дело в том, что в первом случае (в верхнем, где s = 0 написано вне цикла) s изначально равен нулю, а затем с каждой итерацией цикла s увеличивается.

А втором случае на каждой итерации цикла сначала присваивается s = 0, а затем уже изменяется. Поэтому перед каждой следующей итерацией цикла всё что происходило с s раньше обнуляется.

Если подвести итог, то разница заключается в том, что присваивание находится в цикле или вне него, а значит выполняется один раз (если вне цикла) или много раз (если внутри)

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Надо! написать на python решение : "вводится число n. если это число трехзначное и кратно 3 то выведите "да", в противном случае "нет""
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

ckiras9
ocik1632933
astahova
Сергеевич1726
ЕвгенияСергеевна
magichands68
Dms161964937
Yurevich1291
qwert28027170
adman7
v-shevlyakov7992
Суравцова_Алексей669
priemni451
Valeria123864531
Оздоевский