Программа в pascal, переводящая градусы цельсися в градусы фаренгейта и градусы кельвина.f=1.8c+32 , где f-градусы фаренгейта, с-градусы цельсия.k=c+273, где k-градусы кельвина, с-градусы цельсия
Var c, k, f: real; begin write('введите температуру в градусах цельсия: '); readln(c); k : = c + 273; f : = 1.8 * c + 32; writeln('по шкале кельвина: ', k: 0: 1, ', по шкале фаренгейта: ', f: 0: 1) end. тестовое решение: введите температуру в градусах цельсия: 36.6 по шкале кельвина: 309.6, по шкале фаренгейта: 97.9
astenSA
04.02.2020
Тут довольно простое , которое можно решить просто подбором (найти правильное основание системы, и заодно выяснить что за цифры соответствуют остальным символам). я объясню немного подробнее логику рассуждений при таком решении. итак: символ # это 1 запись # * это 4 запись # @ это 7 найти, чему равна запись @ * # для того, чтобы это найти, нам надо узнать основание используемой здесь системы счисления. обозначим его как x. вспомним, что основание системы счисления- это целое число не меньше двух (x ≥ 2). рассмотрим запись числа четыре: (это перевод числа из системы с основанием x в десятичную) раз запись числа 4 состоит из двух разрядов, значит основание системы не может быть больше четырёх (x≤4). ведь уже при основании пять (x = 5) вес второго разряда числа был бы равен пяти ( ), и всё число было бы явно больше четырёх. далее, рассмотрим запись числа семь: мы видим, что второй разряд не изменился- здесь тоже стоит единица. а само число увеличилось на три (7 - 4 = 3). значит, на три увеличилась цифра в первом разряде (была *, стала @). то есть, итак, основание- это целое число, не меньше двух и не больше четырёх. подходят всего три числа- 2, 3, 4. в каком из этих оснований системы можно прибавить к цифре три без переноса в следующий разряд? если основание 2 -то есть всего две цифры: 0 и 1 если основание 3 -то есть три цифры: 0, 1 и 2 если основание 4 -то четыре цифры: 0, 1, 2 и 3 такие цифры используются в одном разряде. и, если при сложении мы выходим за эти цифры, то произойдёт перенос в следующий разряд (чего у нас не было, во втором разряде осталась единица). получается, что в пределах одного разряда, тройку можно прибавить только в системе с основанием 4, причём только в одном случае (0 + 3 = 3). значит: символ * это 0 символ @ это 3 а основание системы счисления равно четырём осталось перевести запись @ * # из четверичной в десятичную систему счисления: ответ: 49
akopovarch
04.02.2020
Windows 1.0 (1985) windows 2.0 (1987) windows 2.1 (1987) windows 3.0 (1990) windows 3.1 (1992) windows for workgroups 3.11 (1992) windows nt 3.5 (1994) windows nt 3.51 (1995) windows 95 (1995) windows nt 4.0 (1996) windows 98 (1998) windows 98 se (1999) windows 2000 (2000) windows me (2000) windows xp (2001) windows server 2003 (2003) windows xp 64-bit edition (2005) windows vista (2006) windows home server (2007) windows server 2008 (2008) windows small business server (2008) windows 7 — windows nt 6.1 (2009) windows server 2008 r2 (2009) windows home server 2011 (2011) windows 8 (2012) windows server 2012 (2012)
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Программа в pascal, переводящая градусы цельсися в градусы фаренгейта и градусы кельвина.f=1.8c+32 , где f-градусы фаренгейта, с-градусы цельсия.k=c+273, где k-градусы кельвина, с-градусы цельсия