Найти алгоритм решения и реализовать его с оператора(операторов) if-then-else: машина задумывает два числа от 0 до 9. игрок пытается их угадать, вводя свои два числа. если они совпали (в любом сочетании) , то игрок выиграл.
Uses crt; var x,y,a,b:integer; begin clrscr; while true do begin randomize; x:=random(10); y:=random(10); write('Введите первое число=');read(a); write('Введите второе число=');read(b); writeln(x,' ',y); if ((a=x) and (b=y)) or ((a=y) and (b=x)) then begin writeln('Вы угадали'); end else begin writeln('Вы не угадали'); end; end; end.
В задании не сказано, откуда берутся исходные данные, поэтому будем вводить их с клавиатуры. Сначала ведем общее количество данных (не факт, что данные за месяц снимались строго ежедневно), а затем сами данные. Это позволит заодно осуществить контроль ввода.
var n,s,t,i:integer; begin Write('Укажите количество данных: '); Read(n); Writeln('Теперь вводите данные'); s:=0; for i:=1 to n do begin Read(t); s:=s+t end; Writeln('Средняя температура за месяц составила ',s/n:0:1) end.
Пример решения
Укажите количество данных: 11 Теперь вводите данные 27 29 26 31 24 23 27 30 31 28 25 Средняя температура за месяц составила 27.4
Дорога, соединяющая города i и j, даст единицу в две позиции - (i, j) и (j, i). Тогда общее количество единиц в матрице равно удвоенному числу дорог. Отсюда и простое решение - считать N^2 чисел, подсчитать количество единиц и поделить его на 2. Можно считать и сумму - от этого ничего не изменится.
#include <iostream> int main() { int n = 0, sum = 0, temp = 0; std :: cin >> n; for (int i = 0; i < n * n; i++) { std :: cin >> temp; sum += temp; } std :: cout << sum / 2; return 0; }
var
x,y,a,b:integer;
begin
clrscr;
while true do begin
randomize;
x:=random(10);
y:=random(10);
write('Введите первое число=');read(a);
write('Введите второе число=');read(b);
writeln(x,' ',y);
if ((a=x) and (b=y)) or ((a=y) and (b=x)) then begin
writeln('Вы угадали');
end
else begin
writeln('Вы не угадали');
end;
end;
end.