Дан фрагмент программы на языке паскаль, на вход которого поданы значения n=10 и m=2. чему будет равно на выходе из фрагмента значение sum? sum: =0; k: =m-1; while k
после выполнение программы sum будет равно 43 - проверил в паскале.
gullieta
01.07.2022
№1. #include< iostream> #include< math.h> using namespace std; long i,sum; int main() { for(i=10; i< =30; i++) { sum+=i; cout< < sum< < endl; } return 0; } #include< iostream> #include< math.h> using namespace std; long i,sum; int main() { i=10; sum=0; while(i< =30) { sum+=i; cout< < sum< < endl; i++; } return 0; } #include< iostream> #include< math.h> using namespace std; long i,sum; int main() { i=10; sum=0; do { sum+=i; cout< < sum< < endl; i++; } while(i< =30); return 0; } №2 #include< iostream> #include< math.h> using namespace std; long i,a,b,k; int main() { cin> > a; for(i=1; i< =10; i++) { cin> > b; if(b==a) k++; } cout< < k; return 0; } #include< iostream> #include< math.h> using namespace std; long i,a,b,k; int main() { i=1; cin> > a; while(i< =10) { cin> > b; if(b==a) k++; i++; } cout< < k; return 0; } #include< iostream> #include< math.h> using namespace std; long i,a,b,k; int main() { i=1; cin> > a; do { cin> > b; if(b==a) k++; i++; } while(i< =10); cout< < k; return 0; } №3 #include< iostream> #include< math.h> using namespace std; long a,b,k; int main() { cin> > a> > b; k=a*a+abs(b)+5*a-10*b; cout< < k; return 0; } №4 #include< iostream> #include< math.h> using namespace std; long a,b,k; int main() { cin> > a; if(a> =0) a++; else a-=2; return 0; } №5 #include< iostream> #include< math.h> using namespace std; double i,u; int main() { for(i=0; i< =10; i+=0.3) { u=i+1; cout< < u< < endl; } return 0; }
Nazaruk_Kodochigov
01.07.2022
Тут довольно простое , которое можно решить просто подбором (найти правильное основание системы, и заодно выяснить что за цифры соответствуют остальным символам).я объясню немного подробнее логику рассуждений при таком решении. итак: символ # это 1запись # * это 4запись # @ это 7 найти, чему равна запись @ * # для того, чтобы это найти, нам надо узнать основание используемой здесь системы счисления. обозначим его как x.вспомним, что основание системы счисления- это целое число не меньше двух (x ≥ 2). рассмотрим запись числа четыре: (это перевод числа из системы с основанием x в десятичную)раз запись числа 4 состоит из двух разрядов, значит основание системы не может быть больше четырёх (x≤4).ведь уже при основании пять (x = 5) вес второго разряда числа был бы равен пяти и всё число было бы явно больше четырёх. далее, рассмотрим запись числа семь: мы видим, что второй разряд не изменился- здесь тоже стоит единица. а само число увеличилось на три (7 - 4 = 3). значит, на три увеличилась цифра в первом разряде (была *, стала @). то есть, итак, основание- это целое число, не меньше двух и не больше четырёх. подходят всего три числа- 2, 3, 4.в каком из этих оснований системы можно прибавить к цифре три без переноса в следующий разряд? если основание 2 -то есть всего две цифры: 0 и 1если основание 3 -то есть три цифры: 0, 1 и 2если основание 4 -то четыре цифры: 0, 1, 2 и 3такие цифры используются в одном разряде. и, если при сложении мы выходим за эти цифры, то произойдёт перенос в следующий разряд (чего у нас не было, во втором разряде осталась единица). получается, что в пределах одного разряда, тройку можно прибавить только в системе с основанием 4, причём только в одном случае (0 + 3 = 3).значит: символ * это 0символ @ это 3а основание системы счисления равно четырём осталось перевести запись @ * # из четверичной в десятичную систему счисления: ответ: 49
после выполнение программы sum будет равно 43 - проверил в паскале.