Считайте n значений с клавиатуры в bash - PullRequest
0 голосов
/ 28 января 2020

У меня скоро экзамен по основам программирования c, и все, что я знаю, это bash, потому что я работаю с ним. Чтобы передать его, мне нужно написать приложение (на любом языке), которое делает это:

"Считать с клавиатуры значения для производства компании (скажем, x) за период n дней. Пожалуйста, напечатайте наименьшее значение для производства (самое низкое x) и день, когда это произошло. Также, пожалуйста, рассчитайте сумму производства для всех дней, кратных 3 (так, где день имеет следующая форма: 3k, где k = 1,2,3, ... n). "

Мой вопрос: возможно ли это в bash и как именно я могу прочитать n значения из клавиатура? Может ли l oop здесь помочь? Если это невозможно в bash, на какой язык программирования мне следует ориентироваться, чтобы выучить это быстро? (Я думал о python).

1 Ответ

1 голос
/ 28 января 2020

Рассмотрим следующее решение bash. Logi c такой же, как если бы вы использовали Python или другое решение для сценариев. read будет получать данные (из стандартного ввода, по умолчанию с клавиатуры).

#! /bin/bash
min_x=
sum_d3=0
read n
for ((i=1 ; i<=n ; i++ )) {
    read x
    if [[ ! "$min_x" ]] || [[ "$x" -lt "$min_x" ]] ; then min_x=$x ; fi
    if (( i%3 == 0 )) ; then sum_d3=$((sum_d3+x)) ; fi
}
echo "MIN PROD=$min_x, SUM(3rd days)=$sum_d3"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...