= = v Урок информатики для 7 «А» класса Дата: 01.03.2021 Тема: Программирование задачи с ветвлением в Python Цель: 1 Применять правила арифметических операций при составлении программы. 2)Составлять программу разветвленной структуры. повтоРИ: материал в тетради, подготовься к заданию СОР. Вариант 2 Задание суммативного оценивания для учащегося 7 «А» (20 мин) 1.03.2021 Время выполнения: 20 мин Вставьте пропущенные фрагменты строк программы для решения задачи: сравнение площади и длины фигуры по рисунку фигуры. Пользователь вводит значение переменной Б Программа должна посчитать по составленным формулам, pl - площадь, аl - длину. Сравнить рlla. Используйте в программе структуру ветвления. [12] ) (Введите значение а”) 2) 3) al- b 6) ... ... ... ... (Длина > 7) dl 8) ILпопадання на вну ввв.) 9 9) else
10) Десериор на наслени рает правила применения SARA операторое вода не пересення Записывает оператор Теода 16 арифметических операция ence onparce вода 10али Записает формулуі Тоа Паписат ормулу 2 2
Значение переменной i не задано, поэтому выведет что - то произвольное, Почему while (a<N) ? А если первая цифра слева в числе = 1? while (a<N) нужно заменить на while (0<N) Убрать строку a=N%10; перед while После строки min=10; добавить строку i=0;
после изменений будет примерно так:
#include<stdio.h> #include<conio.h>
main() { int N,a, min, i, imin; scanf("%d", &N); min=10; i=0; while (0<N) { i++; a=N%10; N=N/10; if (a<min) { min=a; imin=i; } } printf ("%d", imin); getch(); return 0; }
Значение переменной i не задано, поэтому выведет что - то произвольное, Почему while (a<N) ? А если первая цифра слева в числе = 1? while (a<N) нужно заменить на while (0<N) Убрать строку a=N%10; перед while После строки min=10; добавить строку i=0;
после изменений будет примерно так:
#include<stdio.h> #include<conio.h>
main() { int N,a, min, i, imin; scanf("%d", &N); min=10; i=0; while (0<N) { i++; a=N%10; N=N/10; if (a<min) { min=a; imin=i; } } printf ("%d", imin); getch(); return 0; }
Почему while (a<N) ? А если первая цифра слева в числе = 1?
while (a<N) нужно заменить на while (0<N)
Убрать строку a=N%10; перед while
После строки min=10; добавить строку i=0;
после изменений будет примерно так:
#include<stdio.h>
#include<conio.h>
main() {
int N,a, min, i, imin;
scanf("%d", &N);
min=10; i=0;
while (0<N)
{ i++;
a=N%10;
N=N/10;
if (a<min)
{ min=a;
imin=i; }
}
printf ("%d", imin);
getch();
return 0;
}