Помогите!!!! База данных видеокамер, замеряющих скорости автомобилей содержит N записей о номерах проехавших автомобилей и их ск
Помогите!!!!
<span>База данных видеокамер, замеряющих скорости автомобилей содержит N записей о номерах проехавших автомобилей и их скорости в момент съемки. Известна таблица штрафов за превышение допустимой скорости:</span><span><span><span><span> скорость </span><span> Штраф </span></span><span><span><span>от 0 до 70 км/ч</span></span><span> Нет штрафа (0 рублей) </span></span><span><span><span>от 71 до 80 км/ч</span></span><span> 100 рублей </span></span><span><span><span>от 81 до 100 км/ч</span></span><span> 300 рублей </span></span><span><span><span>от 101 до 120 км/ч</span></span><span> 1000 рублей </span></span><span><span><span>от 121 км/ч</span></span><span> 2000 </span></span></span></span> Для каждого зафиксированного камерой номера автомобиля определить максимальный штраф и вывести список номеров автомобилей в порядке убывания этого штрафа. Входные данные <span><span>В первой строке входного файла input.txt находится целое число N (0≤ </span>N ≤100). Следующие N строк входного файла содержат информацию о проехавших автомобилях: номер автомобиля (строка из 8 маленьких латинских букв и цифр), зафиксированная скорость (целое число от 0 до 250). Данные в строке разделены пробелом.</span> Выходные данные <span>В выходном файл output.txt для каждого зафиксированного автомобиля выведите сначала номер автомобиля, потом через пробел максимальный штраф. Этот список необходимо вывести в порядке убывания штрафов. При равных штрафах автомобили выводятся в любом порядке.</span> Примеры: <span><span><span><span> input.txt </span><span> output.txt </span></span><span><span> 5 a111aa78 150 o000oo00 70 a234bv56 65 a111aa78 110 o00oo00 83 </span><span> a111aa78 2000 o000oo00 300 a234bv56 0 </span></span></span></span>
uses crt;
type auto=record nom:string; sht:integer; end;
var f,g:text; a:array[1..100] of auto; s,s1:string; n,k,i,j,c,p,r:integer; x:auto;
begin
clrscr;
assign(f,'input.txt');
reset(f);
assign(g,'output.txt');
rewrite(g);
read(f,n);
readln(f,s);
readln(f,s);
k:=1;
a[k].nom:=copy(s,1,8);
delete(s,1,9);
val(s,a[k].sht,c);
for i:=2 to n do
begin readln(f,s);
s1:=copy(s,1,8); delete(s,1,9); val(s,r,c); p:=0; j:=1; while(j<=k) and(p=0) do if s1=a[j].nom then begin p:=j; a[p].sht:=a[p].sht+r end else j:=j+1; if p=0 then begin k:=k+1; a[k].nom:=s1; a[k].sht:=r; end; end; close(f); for i:=1 to k-1 do
for j:=i+1 to k do
if a[i].sht<a[j].sht then begin x:=a[i]; a[i]:=a[j]; a[j]:=x; end; for i:=1 to k do
begin
writeln(g,a[i].nom,' ',a[i].sht); writeln(a[i].nom,' ',a[i].sht); end; close(g); end<span>.</span>
1. Линейный алгоритм — это такой, в котором все операции выполняются последовательно одна за другой (рис. 1.). 2. Разветвляющий алгоритм – это алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий (рис.2). 3. В алгоритмической структуре «цикл» серия команд (тело цикла) выполняется многократно. <span>Цикл — составная команда алгоритма, в которой в зависимости от значения логического выражения возможно многократное выполнение действия (рис.3).</span>
Program znanija3; var i, number:integer; begin number:=0; while i <> 10 do begin Inc(number); if (number mod 10) = 7 then begin writeln(number); Inc(i); end; end; end.