Ранним утром, воробей пролетел мимо леса. Но услышав всхлипы животного , он полетел на звук. Летел он , летел и видит , заяц сидит на земле и плачет.
- "Что случилось заяц?" - спрашивает он.
- "Да вот , потерялся я , всю ночь по лесу бродил, не могу выбраться."
- "Ну, чего ты, не горюй. Помогу я тебе дом найти , ты только скажи где ты обитаешь и как домик то твой выглядит?"
- " Мой дом с красной крышей , сам синий , а рядом морковки лежат "
-"Так, хорошо , жди здесь и не уходи, я скоро прилечу."
-"Хорошо "
Тем временем воробей уже во всю старался найти домик зайца, спрашивал у животных , букашек. Но никто не знал , где находиться зайкин дом.
Но уже ближе к вечеру , он увидел красную крышу , а потом и морковки. На радостях он полетел к зайке.
-"Зайка, зайка!"-звал он его .
-" Воробей , это ты ? Я здесь !"
- "Я нашёл , пойдём скорей "
И спустя некоторое время они пришли к домику зайки. Он его поблагодарил и пригласил на чай , о воробей сказал ему больше не теряться. Так теперь они и живут вместе и помогают друг другу
Ответ на Ваш вопрос простой: никак!
В языке Паскаль есть так называемый диапазонный тип. Он реализуется, как "вырезка" части диапазона базового типа. Например, если базовый тип целочисленный, можно вырезать из него числа в диазахоне "от" и "до".
Например, описание k: -10..10 означает, что k целочисленное и может изменять от -10 до 10. Целочисленное оно потому, что константы -10 и 10 в PascalABC.NET имеют тип integer. Проблема же состоит в том, что в PascalABC.NET контроль за выходом значения переменной за отведенные границы всего лишь... отсутствует! Т.е. описание k: -10..10 - это просто "хотелка". И Вы можете продолжать этого хотеть. Может быть, Вы подумали, что это PascalABC.NET такой плохой язык? Спешу разочаровать: так ведут себя все диалекты Паскаля. Дело в том. что проверка границ диапазона фактически должна делаться при каждой машинной операции с участием переменной диапазонного типа. И это настолько замедляет программу, что такая проверка, даже если она предусмотрена в конкретном компиляторе, по умолчанию выключена. Более того, оказывается, что гораздо проще проверять выход за границы диапазона напрямую в программе!
Что касается переменной типа real - с ней еще хуже: ее даже нельзя объявить в диапазонном типе, поскольку тип real не является порядковым.
Как итог: проверяем if (k>=-10) and (k<=10) then <все хорошо>.
Можно воспользоваться вариантом if k.Between(-10,10) then ...
Between работает и с real: if r.Between(3.4,15.063) then ...
1.
program list;var x,y,a,b:integer;beginwriteln('Введите размер листа x на y');readln(x,y);writeln('Введите размер изображения a на b');readln(a,b);if (x>a) and (y>b) thenwriteln('Можно разместить')elsewriteln('Нельзя разместить');end.
2.
program opred;var i,n:integer; natch:string; cif: char;beginwrite('Введите натуральное число N: ');readln(natch);write('Введите цифру A: ');readln(cif);n:=length(natch);if natch[n]=cif then write('Верно')elsewriteln('Неверно');end.
3.program opred;var i,n,g,sum,max,kol:integer; chis: array[1..100] of integer;beginwriteln('Вводите числа: ');i:=0;repeat i:=i+1;readln(chis[i]);until(chis[i]=0);n:=i-1;for i:=1 to n do //asum:=sum+chis[i];writeln('a) sum = ',sum);for i:=1 to n do //bbeginif (chis[i]<0) and (chis[i] mod 2 = 0) thenkol:=kol+1;end;writeln('b) kol = ',kol);for i:=1 to n do beginif chis[i]>chis[i+1] thenmax:=chis[i];end;writeln('c) max = ',max);end.
1} 136 - не может получиться (если это 13 и 6, то первая сумма больше второй; а если это 1 и 36, то 36 нельзя получить как сумму 2-х цифр)
2} 712 - может получиться (например для числа 257)
3} 215 - не может получиться (если это 21 и 5, то первая сумма больше второй; если это 2 и 15, значит средняя цифра должна быть <=2, но тогда нельзя получить 15 как сумму средней и младшей цифр)
4} 10 - не может получиться (первая сумма больше второй)
5} 621 - не может получиться (21 нельзя получить как сумму 2-х цифр)
6} 619 - не может получиться (19 нельзя получить как сумму 2-х цифр)
Ответ: 1
( 1Мбайт = 1 000 000 байт ) приставка Мега = 1 000 000.
8Мбайт = 8 000 000 байт