Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 11.10.2012
Сообщений: 9

Доработать скрипт awk

18.12.2015, 17:14. Показов 2337. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание:
3. В файле query2 определить для каждого штата число покупателей, в названии которых есть "SPORT" и выводить среднее число кредита. Кредит находится в последнем столбце(5000, 10000,7000, 3000...т.д)
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#! /usr/bin/awk -f
BEGIN {FS=":";countState=0;bufState[0]="";}
END { \
    for(j=0;j<countState;j++){ \
        printf("Число покупателей ,в названии которых есть  SPORT штата %s равно %s\n",bufState[j],buf[bufState[j]]); \
    } \
}
/.*:.*SPORT/ { \
    flag=0;
    for(i=0;i<countState;i++){ \
        if(bufState[i]==$5){flag=1;break;} \
    } \
    if(flag!=1){ \
        bufState[countState]=$5; \
        buf[$5]=0; \
        countState++; \
    } \
    buf[$5]++; \
}
Сам файл:
Query2
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
100:JOCKSPORTS                :345 VIEWRIDGE        :BELMONT        :CA:96711:5986609:5000
101:TKB SPORT SHOP            :490 BOLI RD.         :REDWOOD CITY   :CA:94061:3681223:10000
102:VOLLYRITE                 :9722 HAMILTON        :BURLINGAME     :CA:95133:6443341:7000
103:JUST TENNIS               :HILLVIEW MALL        :BURLINGAME     :CA:97544:6779312:3000
104:EVERY MOUNTAIN            :574 SURRY RD.        :CUPERTINO      :CA:93301:9962323:10000
105:K + T SPORTS              :3476 EL PASEO        :SANTA CLARA    :CA:91003:3769966:5000
106:SHAPE UP                  :908 SEQUOIA          :PALO ALTO      :CA:94301:3649777:6000
107:WOMENS SPORTS             :VALCO VILLAGE        :SUNNYVALE      :CA:93301:9674398:10000
108:NORTH WOODS HEALTH CENTER :98 LONE PINE WAY     :HIBBING        :MN:55649:5669123:8000
201:STADIUM SPORTS            :47 IRVING PL.        :NEW YORK       :NY:10003:5555335:10000
202:HOOPS                     :2345 ADAMS AVE.      :LEICESTER      :MA:01524:5557542:5000
203:REBOUND SPORTS            :2 E. 14TH ST.        :NEW YORK       :NY:10009:5555989:10000
204:THE POWER FORWARD         :1 KNOTS LANDING      :DALLAS         :TX:75248:5550505:12000
205:POINT GUARD               :20 THURSTON ST.      :YONKERS        :NY:10956:5554766:3000
206:THE COLISEUM              :5678 WILBUR PL.      :SCARSDALE      :NY:10583:5550217:6000
207:FAST BREAK                :1000 HERBERT LN.     :CONCORD        :MA:01742:5551298:7000
208:AL AND BOB'S SPORTS       :260 YORKTOWN CT.     :AUSTIN         :TX:78731:5557631:4000
211:AT BAT                    :234 BEACHEM ST.      :BROOKLINE      :MA:02146:5557385:8000
212:ALL SPORT                 :1000 38TH ST.        :BROOKLYN       :NY:11210:5551739:6000
213:GOOD SPORT                :400 46TH ST.         :SUNNYSIDE      :NY:11104:5553771:5000
214:AL'S PRO SHOP             :45 SPRUCE ST.        :SPRING         :TX:77388:5555172:8000
215:BOB'S FAMILY SPORTS       :400 E. 23RD          :HOUSTON        :TX:77026:5558015:8000
216:THE ALL AMERICAN          :547 PRENTICE RD.     :CHELSEA        :MA:02150:5553047:5000
217:HIT, THROW, AND RUN       :333 WOOD COURT       :GRAPEVINE      :TX:76051:5552352:6000
218:THE OUTFIELD              :346 GARDEN BLVD.     :FLUSHING       :NY:11355:5552131:4000
221:WHEELS AND DEALS          :2 MEMORIAL DRIVE     :HOUSTON        :TX:77007:5554139:10000
222:JUST BIKES                :4000 PARKRIDGE BLVD. :DALLAS         :TX:75205:5558735:4000
223:VELO SPORTS               :23 WHITE ST.         :MALDEN         :MA:02148:5554983:5000
224:JOE'S BIKE SHOP           :4500 FOX COURT       :GRAND PRARIE   :TX:75051:5559834:6000
225:BOB'S SWIM, CYCLE, AND RUN:300 HORSECREEK CIRCLE:IRVING         :TX:75039:5558388:7000
226:CENTURY SHOP              :8 DAGMAR DR.         :HUNTINGTON     :NY:11743:5553006:4000
227:THE TOUR                  :2500 GARDNER RD.     :SOMERVILLE     :MA:02144:5556673:5000
228:FITNESS FIRST             :5000 85TH ST.        :JACKSON HEIGHTS:NY:11372:5558710:4000
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.12.2015, 17:14
Ответы с готовыми решениями:

Скрипт awk
Здравуствуйте как вот в этом скрипте awk -F'!' '{print $2,$5}' query3 | awk ' {a=&quot;01-JAN-90&quot;;}{if ($4==a || $5==a) print $1 } ', подсчитать...

Как запустить *.awk скрипт для обработки вывода tail -f
Нужно чтобы журнал /var/log/iptables.log распарсивался в реальном времени с помощью скрипта AWK. Есть awk скрипт parser.awk ...

Доработать скрипт, проверяющий существование файлов, введенных в командной строке
И еще вопрос. Написал скрипт, который проверяет существование файлов введенных в командной строке. Все работает правильно. Писал с...

5
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
18.12.2015, 17:41
Что означает "доработать"? Среднюю величину кредита выводить для кого (для штата, для фирм с названием СПОРТ в штате, …)?
0
0 / 0 / 0
Регистрация: 11.10.2012
Сообщений: 9
18.12.2015, 17:57  [ТС]
Для фирм с названием СПОРТ в штате
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
18.12.2015, 18:19
Лучший ответ Сообщение было отмечено Fobin как решение

Решение

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#! /usr/bin/awk -f
BEGIN {
    FS=":"
}
$2 ~ /SPORT/ {
    Count[$5]++
    Credit[$5] += $8
}
END {
    for(i in Count)
        printf("Для штата %s покупателей,\
 в названии которых есть SPORT: %d,\
 их средняя сумма кредита: %d \n", 
            i,
           Count[i],
           Credit[i] / Count[i])
}
2
0 / 0 / 0
Регистрация: 11.10.2012
Сообщений: 9
18.12.2015, 18:32  [ТС]
А, как это с моим скриптом совместить, можете объяснить пожалуйста? А то у меня не вышло.
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
18.12.2015, 18:37
Зачем совмещать? Код вполне самодостаточный.
Bash
1
awk -f code_file query2
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.12.2015, 18:37
Помогаю со студенческими работами здесь

Доработать скрипт
Скажите, пожалуйста, как сделать чтобы скрипт перебирал все cb и input с любым индексом, т.е. нужно оптимизировать. &lt;script&gt; ...

Доработать скрипт
Подскажите как изменить скрипт, на данный момент слайдер листается 1 по 4 , потом резко возвращается на первый, хотелось бы сделать чтоб...

Доработать скрипт
Есть скрипт который меняет картинки через интервал времени, очень нужно добавить надписи к картинкам! Помогите кто чем может. Вот сам...

Доработать скрипт
Доброго времени суток! В общем есть скрипт, который проверяет баланс на симке 3G модема под Linux (не переживайте, сам Linux тут ни...

Как доработать скрипт
ЕСТЬ СКРИПТ ЦИТАТНИКА QUOTESS Как к нему добавить, ещё скажем так раздел анекдотов с категориями? Буду благодарен за любую помощь и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru