Мина Тохова
Ученик
(108),
закрыт
4 года назад
var a,b,c,d,e:integer;
begin
a:=3;
b:=2;
c:=3*2=6;
d:=3+2=5;
e:=3-2=1;
end.
Голова Робота
Просветленный
(36284)
4 года назад
Сначала хорошо бы понять, что ты хочешь написать, какая задача.
Исправить можно так:
var a,b:integer; c,d,e: boolean;
Или можно просто удалить программу целиком, поскольку она всё равно ничего не делает.
Мина ТоховаУченик (108)
4 года назад
3. Прочитайте с экрана последовательно два числа и выведите построчно их произведение, сумму и разность. Обязательно указывайте подсказки при вводе.
Голова Робота
Просветленный
(36284)
Изучи Паскаль, потом пиши.
В твоей программе нет ввода двух чисел. Вообще нет ввода. И вывода тоже.
В городе, в котором живут друзья Андрей и Борис, метро состоит из единственной кольцевой линии, вдоль которой на равном расстоянии друг от друга расположены n станций, пронумерованных от 1 до n. Участок линии метро между двумя соседними станциями называется перегоном.
Поезда по кольцевой линии двигаются как по часовой стрелке, так и против часовой стрелки, поэтому чтобы добраться от одной станции до другой, пассажир может выбрать то направление, в котором требуется проехать меньше перегонов. Минимальное число перегонов, которое необходимо проехать, чтобы добраться от одной станции до другой, назовем расстоянием между станциями.
Друзья заметили, что выполняется следующее условие: если загадать некоторую станцию X и выписать для нее два числа: Da — расстояние от станции, на которой живет Андрей, до станции X и Db — расстояние от станции, на которой живет Борис, до станции X, то полученная пара чисел [Da, Db] будет однозначно задавать станцию X.
Например, если n = 4, Андрей живет на станции 1, а Борис живет на станции 2, то станция 1 задается парой [0, 1], станция 2 — парой [1, 0], станция 3 — парой [2, 1] и станция 4 — парой [1, 2].
Их одноклассник Сергей живет в соседнем городе и не знает, на каких станциях живут Андрей и Борис. Чтобы найти друзей, он заинтересовался, сколько существует вариантов пар станций A, B, таких что если Андрей живет на станции A, а Борис — на станции B, то выполняется описанное выше условие.
Требуется написать программу, которая по числу станций n на кольцевой линии определяет искомое количество вариантов.
Входные данные
Первая строка входного файла содержит одно целое число n (3 ≤ n ≤ 40 000).
Выходные данные
Выходной файл должен содержать одно число — искомое количество вариантов.
Пояснения к примерам
В первом примере подходят следующие варианты:
* Андрей живет на станции 1, а Борис на станции 2;
* Андрей живет на станции 1, а Борис на станции 4;
* Андрей живет на станции 2, а Борис на станции 1;
* Андрей живет на станции 2, а Борис на станции 3;
* Андрей живет на станции 3, а Борис на станции 2;
* Андрей живет на станции 3, а Борис на станции 4;
* Андрей живет на станции 4, а Борис на станции 1;
* Андрей живет на станции 4, а Борис на станции 3.
Примеры
входные данные
4
выходные данные
8
входные данные
5
выходные данные
20
Условие задачи
Вы не можете напрямую разыграть bool
для int
:
(int)(nullable.HasValue != nullable1.HasValue) //invalid
но вы можете использовать Convert.ToInt32
:
Convert.ToInt32(nullable.HasValue != nullable1.HasValue) //valid
Итак, ваш код должен быть:
if ((nullable.GetValueOrDefault() != nullable1.GetValueOrDefault() ? 1 : Convert.ToInt32(nullable.HasValue != nullable1.HasValue)) != 0)
Тем не менее, я думаю, что вы можете просто сделать прямое сравнение из-за “поднятых” операторов. Из C# Spec:
Для операторов равенства == [и]!= Поднятая форма оператора существует, если оба типа операндов являются необнуляемыми типами значений и если тип результата – bool. Поднятая форма создается путем добавления одного? модификатор для каждого типа операнда. Поднятый оператор считает два нулевых значения равными, а нулевое значение неравным любому ненулевому значению. Если оба операнда не равны NULL, поднятый оператор разворачивает операнды и применяет базовый оператор для получения результата bool.
Так что вы можете просто использовать:
if (nullable != nullable1)
Что, конечно, означает, что вы можете отказаться от nullable
а также nullable1
переменные в целом и использовать
if (this._OrderBy != value)
Популярное
Темы
Сообщества
СправкаПоддержкаУсловия© 2023 ООО «Яндекс»
ПрограммированиеПеременныеТип переменной
Селитринников И.
9 ноября 2019 ·
ОтветитьУточнить
Вы знаете ответ на этот вопрос?
Поделитесь своим опытом и знаниями
Войти и ответить на вопрос
uses graphABC; var c:integer; f:boolean; procedure KeyDown(Key: integer); begin case Key of VK_Left: begin c:=1; textout(200,200,'c='+inttostr(c)); end; VK_Right: begin c:=2; textout(200,200,'c='+inttostr(c)); end; VK_Up: begin c:=3; textout(200,200,'c='+inttostr(c)); end; VK_Down: begin c:=4; textout(200,200,'c='+inttostr(c)); end; VK_Return:halt; end; end; begin onkeydown:=KeyDown; end.