PHP-практикум. Қисми 2. Массив

Печать

M011. Ададҳои ҳақиқӣ а0,...,а15 дода шудаанд. Ёфта шавад мах(а015, а114, ..., а78).

Даны действительные числа а0,...,а15. Получить мах(а015, а114, ..., а78).

<?php
$N=16;
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i]=rand(0,99),"<br>";
$max=$x[0]+$x[15];
echo "x[0]=",$x[0],"; x[",$N-1,"]=",$x[$N-1],"<br>";
$n=$N/2;
for($i=1;$i<$n;$i++){
$r=$x[$i]+$x[$N-$i-1];
if($max<$r) $max=$r;
echo "x[",$i,"]=",$x[$i],"; x[",$N-$i-1,"]=",$x[$N-$i-1],"<br>";
}
echo "Max = $max<br>";
?>

M012. Ададҳои бутун а0,...,аn-1 дода шудаанд. Ҳама аъзоҳои массиви а0,...,аn-1, ки пештар аз хурдтарин адад воқеъ ҳастанд, ба ин адад зарб карда шаванд.

Даны целые числа а0,...,аn-1. Все члены массива а0,...,аn-1, предшествующие наименьшему числу, умножить на это число.

<?php
$N=20;
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i]=rand(0,99),"<br>";
$min=$x[0];
$index=0;
for($i=1;$i<$N;$i++)
if($min>$x[$i]) {
$min=$x[$i];
$index=$i;
}
echo "Min = $min, Index = $index<br>";
for($i=0;$i<$index;$i++)
$x[$i]*=$min;
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i],"<br>";
?>

M013. Массиви рамзҳо s0,..sn-1 дода шудааст. Дар массив рамзи К чандто мавҷуд аст шуморида шавад.

Дан массив символов s0,..sn-1. Подсчитать сколько раз встречается в массиве символ К.

<?php
$s="Китобро Каримов Комил гирифтааст.";
$n=strlen($s);
$p=0;
for($i=0;$i<$n;$i++)
if($s[$i]=='К') $p++;
echo "Микдори К - $p";
?>

M014. Массиви рамзҳо s0,..sn-1 дода шудааст. Агар дар массиви додашуда ҳарфи 'a' аз ҳарфи 'b' зиёдтар бошад, он гоҳ true чоп карда шавад, дар ҳолати баръакс false чоп карда шавад.

Дан массив символов s0,..sn-1. Напечатать true, если в заданном массиве буква а встречается чаще, чем буква b, и напечатать false в противоположном случае.

<?php
$s="aaaaaaaaaaabrtbbdsabfabbresbbgadbabbab";
$count_a=0;
$count_b=0;
$n=strlen($s);
for($i=0;$i<$n;$i++)
if($s[$i]=='a')
$count_a++;
else if($s[$i]=='b')
$count_b++;
echo ($count_a>$count_b)?"true":"false";
?>

M015. Ададҳои ҳақиқӣ а0,...,а15 дода шудаанд. Ёфта шавад мin(а08, а19, ..., а715).

Даны действительные числа а0,...,а15. Получить мin(а08, а19, ..., а715).

<?php
$N=16;
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i]=rand(0,99),"<br>";
$n=$N/2;
$min=$x[0]*$x[$n];
echo "x[0]=",$x[0],"; x[",$n,"]=",$x[$n],"<br>";
for($i=1;$i<$n;$i++){
$r=$x[$i]*$x[$n+$i];
if($min>$r) $min=$r;
echo "x[",$i,"]=",$x[$i],"; x[",$n+$i,"]=",$x[$n+$i],"<br>";
}
echo "Min = $min<br>";
?>

M016. Массиви ададҳои ҳақиқӣ а0,...,аn-1 дода шудааст. Муайян карда шавад, ки оё қимати мутлақи калонтарин аъзои массиви додашуда аз воҳид калон аст.

Дан массив действительных чисел а0,...,аn-1. Выяснить, верно ли, что наибольший член данного массива по модулю больше единицы.

<?php
$N=16;
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i]=rand(-50,5)/50,"<br>";
$max=$x[0];
for($i=1;$i<$N;$i++)
if($max<$x[$i]) $max=$x[$i];
echo "Кимати мутлаки аъзои калонтарини массив ",abs($max)," аз 1 калон ",
(abs($max)>1)?"аст":"нест";
?>

M017. Массиви ададҳои ҳақиқӣ а0,...,аn-1 дода шудааст. Қимати хурдтарини он аъзоҳои массиви додашуда, ки дар интервали (c1,c2) воқеъ ҳастанд, ёфта шавад ва ҳама аъзоҳои массив, ки дар интервали (c1,c2) воқеъ ҳастанд, бо ин адад иваз карда шаванд. Массиви ибтидоӣ ва ислоҳшуда чоп карда шаванд.

Дан массив действительных чисел а0,...,аn-1. Найти минимальное значение элементов массива, принадлежащих интервалу (c1,c2) и заменить все элементы массива, находящиеся в интервале (c1,c2), на это число. Исходный и скорректированный массивы напечатать.

<?php
$N=20;
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i]=rand(-200,200)/100,"<br>";
$c1=-.2;
$c2=.2;
$fl=true;
$j=0;
for($i=0;$i<$N;$i++)
if($x[$i]>$c1 && $x[$i]<$c2) {
$k[$j++]=$i;
if($fl) {
$fl=false;
$min=$x[$i];
}
else if($min>$x[$i])
$min=$x[$i];
}
if($fl)
echo "Ягон аъзои массив дар интервали ($c1,$c2) вокеъ нест";
else {
$n=count($k);
for($i=0;$i<$n;$i++)
$x[$k[$i]]=$min;
echo "Аъзои хурдтарини массив аз интервали ($c1,$c2): $min<br>";
echo "Массиви нав:<br>";
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i],"<br>";
}
?>

M018. Массиви ададҳои ҳақиқӣ а0,...,аn-1 дода шудааст. Мавқеи якумин аъзои массиви додашударо, ки аз 100 калон аст, муайян карда шавад. Ҳамин аъзо ва ҳама аъзоҳои пасоянд ба 100 тақсим карда шаванд. Массиви ибтидоӣ ва ислоҳшуда чоп карда шаванд.

Дан массив действительных чисел а0,...,аn-1. Определить месторасположение первого элемента данного массива, который больше 100. Этот и все последующие элементы разделить на 100. Исходный и скорректированный массивы напечатать.

<?php
$N=10;
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i]=rand(0,110),"<br>";
$i=0;
while($i<$N && $x[$i]<=100)
$i++;
if($i<$N) {
for($j=$i; $j<$N; $j++)
$x[$j]/=100;
echo "Массиви нав:<br>";
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i],"<br>";
}
?>

M019. Массиви ададҳои ҳақиқӣ а0,...,аn-1 дода шудааст. Дар массиви додашуда ҳамаи ҷуфтҳои (аii+1), ки аii+1 ба 10 каратӣ ҳастанд, ёфта шаванд.

Дан массив целых чисел а0,...,аn-1. Найти в данной последовательности все пары (аii+1), такие, что аii+1 кратно 10.

<?php
$N=10;
for($i=0; $i<$N; $i++)
echo $i,"| ",$x[$i]=rand(-50,50),"<br>";
for($i=0; $i<$N-1; $i++) {
$r=$x[$i]*$x[$i+1];
if($r==10*(int)($r/10))
echo "x[",$i,"]=",$x[$i]," x[",$i+1,"]=",$x[$i+1],"<br>";
}
?>

M020. Ададҳои бутун а0,...,а15 дода шудаанд. Массиви нав аз рӯи қоидаи (а08, а19, ..., а715) сохта шавад. Аъзои минималии массиви ҳосилшуда ёфта шавад.

Даны целые числа а0,...,а15. Получить новый массив по правилу (а08, а19, ..., а715). Найти минимальный элемент полученного массива.

<?php
$N=16;
for($i=0; $i<$N; $i++)
echo $i," | ",$x[$i]=rand(0,99),"<br>";
$n=$N/2;
$min=($b[0]=$x[0]+$x[$n]);
echo "Массиви нав:<br>";
echo "b[0]=",$b[$i],"<br>";
for($i=1;$i<$n;$i++){
$r=$x[$i]+$x[$n+$i]
$b[$i]=$r;
if($min>$r) $min=$r;
echo "b[",$i,"]=",$b[$i],"<br>";
}
echo "Min = $min<br>";
?>

Произведение «OFTOB.COM» публикуется на условиях лицензии Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Непортированная.