1. Какие операции можно применять к переменным целого типа?
2. Можно ли применять операцию деления (/) к переменным целого типа? Почему?
3. Что получится в результате выполнения операторов:
• Write(‘AB ‘:3); Writeln(5*2:3);
• Writeln(5:6,8:5); Writeln(‘KOHEЦ’);
• Writeln(‘PE3УAbTAT’, 5*3,3).
4. Что такое If, Then, Else?
5. Как выглядит полный условный оператор? Как он работает?
6. Как выглядит неполный условный оператор? Как он работает?
- « если число является четным, то вывести «ДА», иначе вывести «НЕТ»;
- если число делится на 5, то вывести целую часть от деления.
Задачи
- Напишите алгоритмы решений следующих задач и составить к каждой блок-схему:
- вывести на экран слово «цикл» 10 раз.
- вводить 10 чисел и подсчитывать сумму этих чисел.
- Сколько раз будут выполнены операторы из тела циклов в следующих фрагментах программ:
Как найти сумму n чисел Python
• For k:=10 To 20 Do.
• For k:=20 To 10 Do.
• k:-=5; r:=15; For i:=k+1 To r-1 Do.
• k:=5; r:=15; For i:=0 To k*r Do. .
- Определить значение переменной S после выполнения следующих операторов:
- Составить программу возведения натурального числа в квадрат, используя следующую закономерность:
- Определить количество трехзначных натуральных чисел, сумма цифр которых равна заданному числу N.
- Составить программу вычисления суммы кубов чисел от 25 до 125.
- Среди двузначных чисел найти те, сумма квадратов цифр которых делится на 13. Ответ: 23, 32…
- Написать программу поиска двузначных чисел, таких, что если к сумме цифр этого числа прибавить квадрат этой суммы, то получится это число. Ответ: 12, 42, 90.
- Квадрат трехзначного числа оканчивается тремя цифрами, которые как раз и составляют это число. Написать программу поиска таких чисел. Ответ: 376, 625.
- Написать программу поиска четырехзначного числа, которое при делении на 133 дает в остатке 125, а при делении на 134 дает в остатке 111. Ответ: 1987.
- Найти сумму положительных нечетных чисел, меньших 100.
- Найти сумму целых положительных чисел из промежутка от А до В, кратных 4 (значения переменных А и В вводятся с клавиатуры).
- Найти сумму целых положительных чисел, больших 20, меньших 100, кратных 3 и заканчивающихся на 2, 4 или 8.
- В каких из перечисленных задач нужно использовать операторные скобки:
Похожие:
![]() |
Практикум для студентов по специальности 09. 02. 03 Программирование. Методические указания предназначены для выполнения практических работ для студентов очной формы обучения специальности 09. 02. 03. |
![]() |
Организация и технология документационного обеспечения управления учебно-методическое пособие . |
![]() |
Учебно-методическое пособие для студентов специальности 050144 «Дошкольное образование» Методическая работа воспитателя детей дошкольного возраста. Вып. 4, Ч. Учебно-методическое пособие для студентов специальности 050144. |
![]() |
Д. Ф. Костина Дополнительный материал к учебному пособию «Программирование в компьютерных системах»: специфика профессии программиста. Дополнительный материал. Учебно-методическое пособие. |
![]() |
Учебно-методическое пособие для самостоятельной работы студентов. Учебно-методическое пособие предназначено для самостоятельной подготовки и отработки мануальных навыков сестринской практики в условиях. |
![]() |
Учебно-методическое пособие для студентов пм. 04.(07.) «Выполнение. Учебно-методическое пособие составлено в соответствии с требованиями Федерального Государственного образовательного стандарта по. |
![]() |
1. 1 Арифметические основы ЭВМ Составлены в соответствии с фгос спо по специальности 230115 (09. 02. 03) «Программирование в компьютерных системах» и рабочей программой. |
![]() |
Методическое пособие по выполнению курсовых работ по дисциплине «web-дизайн. Методическое пособие по выполнению курсовых работ по дисциплине «Web-дизайн и Web-программирование» для студентов очной и заочной. |
![]() |
Учебно-методическое пособие Рекомендовано методической комиссией. Методы молекулярной диагностики: Учебно-методическое пособие. Авторы: А. Д. Перенков, Д. В. Новиков, С. Г. Фомина, Л. Б. Луковникова. |
![]() |
Учебно-методическое пособие для выполнения дипломной работы по специальности. Учебно-методическое пособие предназначено для преподавателей и студентов, занимающихся выполнением выпускной квалификационной работы. |
![]() |
Учебно-методическое пособие Елабуга 2016 ббк 74. 58 Учебно-методическое. Методическое пособие предназначено для студентов 1 курса высших учебных заведений неязыковых специальностей |
![]() |
Учебно-методическое пособие для студентов заочного отделения Рекомендуется учебно-методическим объединением по медицинскому и фармацевтическому образованию вузов России в качестве учебного пособия. |
![]() |
Учебно-методическое пособие для студентов Вакцинопрофилактика инфекционных болезней учебно-методическое пособие для студентов. Екатеринбург: Изд. Угма, 35с |
![]() |
Учебно-методическое пособие Казань 2008 федеральное агентство по. Полевая археологическая практика Казанского государственного университета: Учебно-методическое пособие для студентов, обучающихся. |
![]() |
Рабочая программа профессионального модуля разработка программных. Федерального государственного образовательного стандарта по специальности среднего профессионального образования, входящей в состав. |
![]() |
Учебно-методическое пособие для студентов 1, 2 курса очной формы. Учебно-методическое пособие предназначено для студентов-очников (1-2 курсов) учебных заведений (факультетов) неязыковых специальностей. |
Сумма цифр числа.Пишем на Python.
Источник: rykovodstvo.ru
Написать программу поиска двузначных чисел таких что если к сумме цифр этого числа прибавить
Для решения задачи достаточно часто требуется использовать несколько вложенных друг в друга циклических конструкций. Такие конструкции называют вложенными циклами.
Рассмотрим несколько примеров:
|| Дано натуральное число S. Требуется написать программу для нахождения всех прямоугольников, площадь которых равна S и стороны выражены натуральными числами.
program zadacha4_6; // название программы var s, a, b: longint; // описание переменных Begin // начало writeln(‘Введите s’); // вывод сообщения readln(s); // ввод s for a:=1 to s do // запускаем арифметический цикл с параметром FOR для i от 1 до s делать for b:=1 to s do // запускаем внутри этого цикла вложенный арифметический цикл с параметром FOR для i от 1 до s делать if a*b=s then writeln (‘стороны ‘,a,’ и ‘,b); // проверяем условие, если a*b=s, то выводим сообщение со сторонами прямоугольников End. // конец
Данную задачу можно было решить, используя только один цикл. Подумайте, как это сделать.
|| Даны натуральные числа n, m. Получить все натуральные числа, меньшие n, сумма квадратов цифр, которых равна m.
program zadacha4_7; // название программы var n, m, i, a, sum, cif: longint; // описание переменных Begin // начало writeln(‘введите n и m’); // вывод сообщения readln(n, m); // ввод n, m for i:=1 to n do // запускаем арифметический цикл с параметром FOR для i от 1 до n делать begin // начало тела основного цикла a:=i; // присваиваем переменной a значение i sum:=0; // обнуляем переменную sum while a>0 do // запускаем вложенный цикл с предусловием, пока a>0 делать begin // начало тела вложенного цикла cif:=a mod 10; // присваиваем переменной cif значение остатка от деления на 10 sum:=sum+sqr(cif); // находим сумму квадратов цифр a:=a div 10; // присваиваем переменной a значение целой части при делении на 10 end; // конец тела вложенного цикла if sum=m then write(i,’ ‘); // проверяем условие, если сумма равна m, тогда выводим это число end; // конец тела основного цикла End. // конец
|| Найти все решения заданного числового ребуса. Каждой букве соответствует некоторая цифра. Причём одинаковым буквам соответствуют одинаковые цифры, разным буквам — разные цифры.
Поскольку здесь всего три буквы, то для решения достаточно написать три вложенных цикла, и перебрать все варианты сложения трёхзначных чисел.
program zadacha4_8a; // название программы var k, t, o, kto, kot, tok: longint; // описание переменных Begin // начало for k:=0 to 9 do // запускаем арифметический цикл с параметром FOR для k от 0 до 9 делать for t:=0 to 9 do // запускаем вложенный арифметический цикл с параметром FOR для t от 0 до 9 делать for o:=0 to 9 do // запускаем вложенный арифметический цикл с параметром FOR для o от 0 до 9 делать begin // начало тела цикла kto:=k*100+t*10+o; // присваиваем переменной kto значение k*100+t*10+o kot:=k*100+o*10+t; // присваиваем переменной kot значение k*100+o*10+t tok:=t*100+o*10+k; // присваиваем переменной tok значение t*100+o*10+k if (k<>t) and (k<>o) and (t<>o) and (kto+kot=tok) // проверяем условие, если k<>t и k<>o и t<>o и kto+kot=tok, then writeln(kto,’+’,kot,’=’,tok); // тогда выводим результат end; // конец тела цикла End. // конец
В данном алгоритме тело цикла выполнялось 10∙10∙10=1000 раз. (будем говорить сложность алгоритма = 1000)
Если же для решения более сложных ребусов потребуется написать 8-10 вложенных циклов, то такой полный перебор будет работать достаточно долго.
Можно немного упростить данный алгоритм, если увидеть, что 1≤k≤4, t≥2.
for k:=1 to 4 do for t:=2 to 9 do for o:=0 to 9 do
Теперь сложность алгоритма 4∙8∙10=320. Простое косметическое исправление дало увеличение скорости в 3 раза.
Но и данный алгоритм не является оптимальным. Посмотрите, при k=2 и t=2 программа переберёт все 10 вариантов o. В таких случаях, когда k=t цикл по o вообще необходимо не выполнять.
Назовём такой метод — контролируемый перебор.
program zadacha4_8b; // название программы var k, t, o, kto, kot, tok: longint; // описание переменных Begin // начало for k:=1 to 4 do // запускаем арифметический цикл с параметром FOR для k от 1 до 4 делать for t:=2 to 9 do // запускаем вложенный арифметический цикл с параметром FOR для t от 2 до 9 делать if k<>t then // проверяем условие, если k<>t, тогда for o:=0 to 9 do // запускаем вложенный арифметический цикл с параметром FOR для o от 0 до 9 делать if (k<>o) and (t<>o) then // проверяем условие, если k<>o и t<>o, тогда begin kto:=k*100+t*10+o; // присваиваем переменной kto значение k*100+t*10+o kot:=k*100+o*10+t; // присваиваем переменной kot значение k*100+o*10+t tok:=t*100+o*10+k; // присваиваем переменной tok значение t*100+o*10+k if kto+kot=tok then writeln(kto,’+’,kot,’=’,tok); // проверяем условие, если kto+kot=tok, тогда выводим результат end; End. // конец
Вопросы для повторения:
- Для чего предназначен оператор цикла?
- Какие циклы существуют в языке Pascal?
- Какой формат записи имеет оператор FOR?
- Как работает оператор FOR?
- В каких случаях применяется оператор FOR?
- Сколько раз будет выполнен цикл, и чему будет равна переменная S после выполнения:
s:=0; n=6; for i:=3 to n do s:=s+i;
s:=0; i:=1; while i
Задания для самостоятельной работы:
- Старинная задача. Сколько можно купить быков, коров и телят, если бык стоит 10 рублей, корова – 5 рублей, телёнок – полтинник (0,5 рубля), при условии, что на 100 рублей надо купить 100 голов скота.
- Задано натуральное n. Для всех чисел от 1 до n найти сумму чётных делителей.
- Найти все двузначные числа, которые содержат цифру N.
- Написать программу поиска двузначных чисел, удовлетворяющих следующему условию: если к сумме цифр числа прибавить квадрат этой суммы, то получится само число.
- Написать программу поиска трёхзначных чисел, квадрат которых оканчивается тремя цифрами, составляющими исходное число.
- Написать программу поиска четырёхзначного числа, которое при делении на C даёт в остатке B, а при делении на B даёт в остатке D.
- Найти сумму целых положительных чисел из промежутка от А до В, кратных k (значения переменных А и В вводятся с клавиатуры).
- Найти сумму целых положительных чисел, больших A, меньших B, кратных 3 и заканчивающихся на 2, 4 или 8.
- В трёхзначном числе зачеркнули старшую цифру, когда полученное двузначное число умножили на 7, то получили данное число. Найти это число.
- Сумма цифр трёхзначного числа кратна 7, само число также делится на 7. Найти все такие числа.
- Среди четырёхзначных чисел выбрать те, у которых все четыре цифры различны.
- В 1626 году индейцы продали остров Манхеттен за 20$. Если бы эти деньги были помещены в банк на текущий счёт и ежегодный прирост составил k%, то какова была бы сумма в текущем году?
- Найти минимальное число, большее N, которое нацело делится на K (K, N — натуральные числа).
- Выяснить, сколько раз в натуральном числе встречается его максимальная цифра (Например, ввод 4423, вывод 2 раза; ввод 9077, вывод 1 раз).
- Стороны прямоугольника заданы натуральными числами M и N. Составить программу, которая будет находить, на сколько квадратов, стороны которых выражены натуральными числами, можно разрезать данный прямоугольник, если от него каждый раз отрезается квадрат максимально возможной площади.
Источник: it59mgn.ru
(Паскаль или Delphi) Написать программу поиска двухзначных чисел, удовлетворяющих следующему условию: если к сумме цифр числа прибавить квадрат этой суммы, то получится само число.
(Паскаль или Delphi) Написать программу поиска двухзначных чисел, удовлетворяющих следующему условию: если к сумме цифр числа прибавить квадрат этой суммы, то получится само число.
Ответ(ы) на вопрос:
Program z_3; var a,b,n,s, i: integer; Begin repeat writeln (‘Введите Ваше число’); readln (n); if (n 99) then i:= 0 else i:= 1; until i>0; a:= n mod 100 div 10; b:= n mod 10; s:= (a+b)+sqr (a+b); if s <> n then writeln (‘Число не соотвествует условию’) else writeln (‘Число ‘,s, ‘ соответствует условию’); End.
Источник: cwetochki.ru
Написать программу поиска двузначных чисел таких что если к сумме цифр этого числа прибавить
Пожалуйста помогите решить несколько задачек,а то я нитё не понимаю 🙁 Плиз плиз плиз! Я буду очень благодарна!
Линейные алгоритмы:
1)Заданы два целых числа k и d. Используя только арифметические операции, найдите целую и дробную части от деления k на d.
2)Дано действительное число a. Не пользуясь никакими другими операциями кроме умножения, получить a21 за шесть операций; («21»-в степени)
Условные операторы:
1)Даны два числа. Найти меньшее из них.
Оператор выбора:
1)Дано целое число в диапазоне 1 – 5. Вывести строку — словесное описание соответствующей оценки (1 — «плохо», 2 — «неудовлетворительно», 3 — «удовлетворительно», 4 — «хорошо», 5 — «отлично»).
1)Дан целочисленный массив размера N. Вывести вначале все его четные элементы, а затем — нечетные.
2)Имеется целочисленный массив n*m элементов.
Символы и строки:
1)Подсчитать, сколько раз в предложенном тексте встречается символ «?».
Воть! Спасибки заранее! Оч прошу. оч оч нужно!
2)Дано действительное число a. Не пользуясь никакими другими операциями кроме умножения, получить a21 за шесть операций; («21»-в степени)
Вы точно уверены в правильности задания? Вообще-то при умножении показатели степеней складываются, если конечно речь не идет о битовых операциях
Нам дали вот такую формулировку задания,это точно..Сори я не знаю,что такое Битовые операции
Условные операторы:
1)Даны два числа. Найти меньшее из них.
program mid;
var a,b: real;
begin
readln(a,b);
if a end.
Оператор выбора:
1)Дано целое число в диапазоне 1 – 5. Вывести строку — словесное описание соответствующей оценки (1 — «плохо», 2 — «неудовлетворительно», 3 — «удовлетворительно», 4 — «хорошо», 5 — «отлично»).
program ball;
label vvv;
var i: integer;
begin
vvv: readln(i);
if (i<1) or (i>5) then goto vvv;
case i of
1: writeln(‘плохо’);
2: writeln(‘неудовлетворительно’);
3: writeln(‘удовлетворительно’);
4: writeln(‘хорошо’);
5: writeln(‘отлично’);
end;
end.
Операторы цикла:
1)Найти все числа, которые делятся на N среди:
всех двухзначных чисел;
Допустим что N — целое число, в противном случае нужно просто изменить тип переменной.
program spisok;
var N,i: integer;
begin
readln(N);
for i:=10 to 99 do
if i/N=trunc(i/N) then writeln(i);
end.
Результатом выполнения программы будет столбик двузначных чисел, которые делятся на N без остатка.
Операторы цикла:
2)Даны два целых числа A и B (A < B). Вывести все целые числа, расположенные между данными числами (не включая сами эти числа), в порядке их убывания, а также количество N этих чисел.
program analiz;
var i,a,b,s: integer;
begin
readln(a,b);
s:=0;
for i:=b-1 to a+1 downto
begin
writeln(i);
s:=s+1;
end;
writeln(‘сумма чисел равна ‘,s);
end.
Имеется целочисленный массив n*m элементов.
Каких элементов в массиве больше отрицательных или положительных?
Массивы:
1)Дан целочисленный массив размера N. Вывести вначале все его четные элементы, а затем — нечетные.
program massiv;
var i, N: integer;
a: array [1..1000] of integer;
begin
randomize;
readln(N);
for i:=1 to N do a[i]:=random*30+1;
i:=2;
while i begin writeln(a[i]); i:=i+2; end;
i:=1;
while i begin writeln(a[i]); i:=i+2; end;
end.
Массивы:
Имеется целочисленный массив n*m элементов.
Каких элементов в массиве больше отрицательных или положительных?
Условимся считать 0 — положительным числом, тогда решение будет таким:
program summ;
var i,j,n,m: integer;
a: array [1..1000, 1..1000] of integer;
pol, otr: integer;
begin
randomize;
readln(n,m);
for i:=1 to n do for j:=1 to m do readln(a[i,j]);
pol:=0;
otr:=0;
for i:=1 to n do
for j:=1 to m do
if a[i,j]>=0 then pol:=pol+1 else otr:=otr+1;
if pol>otr then writeln(‘положительных чисел больше’) else if pol end.
И воть ещё 2 задачки..если не сложно будет..
Операторы цикла:
3)Написать программу поиска двузначных чисел, удовлетворяющих следующему условию: если к сумме цифр числа прибавить квадрат этой суммы, то получится само число.
Условные операторы:
2)Заданы два числа. Являются ли они оба большими 20?
Символы и строки:
1)Подсчитать, сколько раз в предложенном тексте встречается символ «?».
Условимся, что текст представляет собой строку длиной не более 255 символов.
program povtor;
var st: string;
sum, i: integer;
begin
readln(st);
sum:=0;
for i:=1 to length(st) do
if copy(st,i,1)=’?’ then sum:=sum+1;
writeln(‘Символ ? в тексте встречается ‘,sum,’ раз.’);
end.
Условные операторы:
2)Заданы два числа. Являются ли они оба большими 20?
program analiz;
var a,b: real;
begin
readln(a,b);
if (a>20) and (b>20) then writeln(‘Оба числа больше 20’) else writeln(‘По крайней мере одно число не больше 20’);
end.
Операторы цикла:
3)Написать программу поиска двузначных чисел, удовлетворяющих следующему условию: если к сумме цифр числа прибавить квадрат этой суммы, то получится само число.
program search;
var i, d, e, s: integer;
begin
for i:=10 to 99 do begin
d:=trunc(i/10);
e:=i-d*10;
s:=d+e;
if s+sqr(s)=i then writeln(i); end;
end.
Линейные алгоритмы:
1)Заданы два целых числа k и d. Используя только арифметические операции, найдите целую и дробную части от деления k на d.
Что имеете в виду под арифметическими операциями? Какие именно?
Источник: www.hardforum.ru