Pyton код Алиса расставляет коробки с коржиками в кладовке в ряд. На каждой коробке написано количество коржиков, поэтому Алиса расставляет коробки по возрастанию количества коржиков.
Напиши программу, которая читает числа a и b и выводит их через пробел по возрастанию.
В браузере консольный ввод организовать нереально.
В качестве среды исполнения использовал Node.js версии 12.18.3.
Иллюстрации кода, а также пример вывода добавлены во вложения.
=========================
Ваши оценки и отзывы лучше оценить качество ответа.
Если ответ удовлетворил, не забудь отметить его как "Лучший".
=========================
Код:
"use strict";
const readline = require('readline');
// IO realisation
(async function QNAThread(dialog) {
const qna = readline.createInterface({
input: process.stdin,
output: process.stdout
});
await dialog(function askMe(text) {
return new Promise((resolve, reject) => {
qna.question(text + " ", resolve);
});
});
qna.close();
})(mainDialog);
function firstTask() {
console.log("[Your name and lastname here]");
console.log("[Information about your group and university]");
}
function secondTask(a, b) {
return [(a+b)/2, Math.sqrt(a*b)];
}
function thirdTask(x) {
return Math.pow(Math.cos(Math.PI * x), 2) * Math.log(3*x);
}
function fifthTask(x) {
return (x*x*x - 5*x*x + 1) !== 10;
}
function sixth(x, b) {
return (x*x*x + 4*x > -1) && b;
}
// Here is the main script!
async function mainDialog(askMe) {
//Task #1
console.log("{First task}");
firstTask();
//Task #2
console.log("\n{Second task}");
console.log(`Answers for [A=4] and [B=7] are ${secondTask(4, 7)}\n`);
//Task #3
console.log("{Third task}");
let x = Number.parseFloat(await askMe("VVEDITE ZNACHENIE X:=\n"));
console.log(`PRI X=\t${x} znachenie Y=\t${thirdTask(x)}\n`);
//Task #4
console.log("{Fourth task}");
console.log(`1) При x=${x} значение функции y=\t${thirdTask(x)};`);
const inner = `2) При x=${x}`;
console.log(`${inner}\n${" ".repeat(inner.length)}\tзначение функции y=\t${thirdTask(x)};`);
console.log("*".repeat(40));
console.log(`3) При x=${x} \n\nзначение функции y=\t${thirdTask(x)};`);
console.log("*".repeat(40));
//Task #5
console.log("\n{Fifth task}");
x = Number.parseFloat(await askMe("Enter the X value:"));
console.log(`For x=${x} logical value of goal expression is \"${fifthTask(x)}\".`);
//Task #6
console.log("\n{Sixth task}");
x = 2;
const b = true;
console.log(`For [x=${x}] and [b=${b}] logical value of goal expression is ${sixth(x, b)}.`)
}
С вероятнее всего, вы написали свой скрипт по каким то старым гайдам, информация в которых давным давно устарела. В текущей версии API OpenWeatherMap объект OWM не имеет атрибута weather_at_place()
В текущей версии API объект OWM имеет метод weather_manager(), возвращающий WeatherManager. Уже у этого объекта мы можем вызвать метод weather_at_place(), который опять же вернёт нам очередной объект, Observation. У Observation мы можем обратиться к атрибуту weather, уже у которого вызываем метод temperature(unti), который нам наконец-таки вернёт словарь с данными о температуре в указанной области.
Пример рабочего скрипта:
#Python 3.8.3 pyowm 3.0.0
import settings #Я храню все API и прочее в отдельном .py файле
import pyowm
API_KEY = settings.PYOWM_APIKEY #Получаем API_KEY из файла настроек
owm_obj = pyowm.OWM(API_KEY) #Создаём экземпляр OWM
city = input('Enter city to get weather:\n')
#Получаем WeatherManager
weather_manager = owm_obj.weather_manager()
#Получаем Observation в для указанного city:
obs = weather_manager.weather_at_place(city)
#Обращаемся к атрибуту weather объекта obs (Observation) и #вызываем метод temperature, тем самым получая заветные данные о #температуре. В квадратных скобках указываем ключ 'temp', что бы #получить только данные о текущей температуре:
temperature_at_selected_place = obs.weather.temperature(unit='celsius')['temp']
print(f'{temperature_at_selected_place}')