АнжелаВасильевич
?>

На сковородку одновременно можно положить k котлет. каждую котлету нужно с каждой стороны обжаривать 1 минуту непрерывно. за какое наименьшее время удастся поджарить с обеих сторон n котлет? входные данные: вводятся 2 числа: k и n. все числа не превосходят 32000. выходные данные: выведите одно число – ответ на .

Информатика

Ответы

ren7869
Если котлет не больше k, то жарить придётся 2 минуты — по минуте на каждой из сторон. если их больше k, то надо поджарить 2n сторон. каждую минуту можно поджарить не более k сторон, значит, надо потратить [2n/k] минут, где [x] — округление вверх. python 3.5 from math import ceil n, k = map(int, print(max(ceil(2 * n / k), 2)) пример ввода: 3 2 пример вывода: 3 
Михеев557
Вот исходник. заменишь строку и искомые слова. /* * *   программа решает :   дана строка символов. группы символов, *   разделенные пробелами (одним или несколькими) и не содержащие пробелы *   внутри себя, будем называть словами. *   заменить в строке слова s на слова w ( s, w - заданы). *   *     */ // #include < stdio.h> #include < string.h> #include < stdlib.h> #include < ctype.h> #define bool int #define true 1 #define false 0 #define max(x, y) ) > (y)) ? (x) : (y)) #define space ' ' // подпрограмма определяет, является ли группа символов словом. bool iswordc (const char*const str, const char*const begin, int len); // #pragma argsused int main(int argc, char* argv[]) {         const char*const def_str = "ехал   грека   через реку , видит грека – в реке рак. сунул грека   руку в реку, рак за руку греку – цап! рекурсия рукавицы"; const char* s[] =                           { "грека", "реку", "руку", "рак",   "" }; const char* w[sizeof(s) / sizeof(char*)] = { "",   "поле", "ногу", "мышь", "грека" };         const int counts = sizeof(s) / sizeof(char*);         int i, offset, delta, isword;         char* pos; char* str = (char*)malloc(strlen(def_str)+1); if (! str) return 1; memcpy(str, def_str, strlen(def_str)+1); for ( i = 0; i < counts; ++i) { pos = str; while ((pos = strstr(pos, s[i])) ! = null) { // группы символов, разделенные пробелами, будем называть словами.                         if (iswordc(str,pos,strlen(s[i])) == true) { if (strlen(s[i]) ! = strlen(w[i])) {                                         // при разной длине - компенсируем разницу, т.е при замене рак на раковина не должны портиться другие данные. delta = strlen(s[i]) - strlen(w[i]); if (delta < 0) { offset = pos - str; str = (char*)realloc(str, strlen(str) + 1 - delta ); if (! str) return 1; str[strlen(str) - delta] = '\0'; pos = str + offset; memmove(pos - delta, pos, strlen(pos)); } memset(pos, space, max(strlen(w[i]), strlen(; // замена "грека" на "аа" = "" } strncpy(pos, w[i], strlen(w[i])); } pos += strlen(s[i]); } }     free(str);         return 0; } // // // подпрограмма определяет, является ли группа символов словом. bool iswordc(const char*const str, const char*const begin, int len) {       bool lhs,rhs;   // ( рак и раковина разные слова.)       // к (unsigned char) необходимо т.к. функции isspace и ispunct делают проверку (a> -1 & & a< =255).       lhs = (begin == str); // исключаем выход за границы.       lhs = lhs || (isspace((unsigned char) *(begin - 1))   || ispunct((unsigned char) *(begin - ;       rhs =         isspace((unsigned char) *(begin + len))|| ispunct((unsigned char) *(begin + len));       return lhs & & rhs; } //
snopovajulia
Задача
Требуется написать программу, вычисляющую значение какой-либо функции у = f(x). Допустим, такой:

у = x – 2, если x > 0,
y = 0, если x = 0,
y = |x|, если x < 0.
Решение
При определении значений подобных функций переменная y вычисляется по-разному (по разным формулам) в зависимости от значения x.

Такие задачи решаются с конструкции условного оператора if - else. Поскольку в данном случае мы имеем три условия (x > 0, x = 0 и x < 0), то потребуется использование еще вложенной конструкции if - else, т. к. в языке Pascal нет оператора множественного ветвления (оператор case в данном случае не подходит).

В языке программирования Паскаль (да и в других тоже) желательно вложенные конструкции if - else помещать во внешнюю ветку else, а не if. Так проще не запутаться.

Таким образом, алгоритм вычисления значения функции может быть таким:

Если x > 0, то у = x - 2
Иначе (ниже идет вложенная конструкция)
Если x = 0, то y = 0
Иначе y = |x|.
В последнем пункте можно опустить оператор if с проверкой, что x < 0, так как если ход выполнения программы дошел до этого пункта, то x уже другим быть и не может (варианты, когда он больше или равен нулю, уже были исключены).

Если не трудно отблагодари

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

На сковородку одновременно можно положить k котлет. каждую котлету нужно с каждой стороны обжаривать 1 минуту непрерывно. за какое наименьшее время удастся поджарить с обеих сторон n котлет? входные данные: вводятся 2 числа: k и n. все числа не превосходят 32000. выходные данные: выведите одно число – ответ на .
Ваше имя (никнейм)*
Email*
Комментарий*