|
В этом разделе приведены решения некоторых стандартных задач из основ программирования с использованием языка программирования PHP.
M001. Дан массив чисел а0,...,аn-1. Выяснить, имеются ли в данном массиве два идущих подряд положительных элемента. Подсчитать количество таких пар.
<?php $x=array(); for($i=0;$i<10;$i++) $x[$i]=rand(-50,50); $n=count($x); $p=0; for($i=0;$i<$n-1;$i++){ echo"$i|$x[$i]<br>"; if($x[$i]>0 and $x[$i+1]>0) $p++; } echo "Миқдори ҷуфтҳо - $p"; ?>
M002. Даны действительные числа а0,...,аn-1. Вычислить сумму положительных и произведение четных членов данного массива. Если таких членов нет, то выдать сообщение.
<?php $n=10; $x=array(); for($i=0;$i<$n;$i++) $x[$i]=rand(-50,50); $s=0; $p=1; for($i=0;$i<$n;$i++){ echo "$i|$x[$i]<br>"; if($x[$i]>0) $s+=$x[$i]; $r=2*(int)($x[$i]/2); if($x[$i]==$r) $p*=$x[$i]; } if($s==0) echo "Ададҳои мусбат вуҷуд надоранд<br>"; else echo "Суммаи ададҳои мусбат: $s <br>"; if($p==1) echo "Ададҳои ҷуфт вуҷуд надоранд<br>"; else echo "Ҳосили зарби ададҳои ҷуфт: $p"; ?>
M003. Если в данном массиве действительных чисел а0,...,аn-1 есть хотя бы один член, меньший чем -2, то все отрицательные члены заменить их квадратами.
<?php $x=array(); for($i=0;$i<10;$i++) $x[$i]=rand(-15,50); $n=count($x); for($i=0;$i<$n;$i++) echo "$i|$x[$i]<br>"; $fl=0; $i=0; while($fl==0 && $i<$n){ if($x[$i]<-2) $fl=1; $i++ ; } echo "<p>"; if($fl==1){ for($i=0;$i<$n;$i++) if($x[$i]<0) $x[$i]*=$x[$i]; } for($i=0;$i<$n;$i++) echo "$i|$x[$i]<br>"; ?>
M004. Сформировать в программе массив из целых чисел от 2 до N. Подсчитать сумму квадpатов четных и сумму квадратов нечетных чисел.
<?php $N=12; $N-=1; for($i=0;$i<$N;$i++) $x[$i]=$i+2; for($i=0;$i<$N;$i++) echo "$i|$x[$i]<br>"; $sum_even=0; $sum_odd=0; for($i=0;$i<$N;$i+=2) $sum_even+=$x[$i]*$x[$i]; for($i=1;$i<$N-1;$i+=2) $sum_odd+=$x[$i]*$x[$i]; echo "Суммаи квадрати ададҳои ҷуфт: $sum_even<br>"; echo "Суммаи квадрати ададҳои тоқ: $sum_odd<br>"; ?>
M005. Массив а0,...,а23 содержит данные измерения температуры воздуха в течение дня. Найти максимальную, минимальную и среднюю температуру воздуха.
<?php $N=24; for($i=0;$i<$N;$i++) $x[$i]=rand(22,38); for($i=0;$i<$N;$i++) echo "$i, $x[$i]<br>"; $max=$x[0]; $min=$x[0]; $s=$x[0]; for($i=1;$i<$N;$i++){ if($max<$x[$i]) $max=$x[$i]; if($min>$x[$i]) $min=$x[$i]; $s+=$x[$i]; } $avg=$s/$N; echo "Max = $max<br>"; echo "Min = $min<br>"; echo "Қимати миёна = $avg<br>"; ?>
M006. Дан массив целых чисел а0,...,аn-1. Выяснить имеется ли в данном массиве хотя бы одно нечетное отрицательное число и определить его местонахождение в массиве.
<?php $N=10; for($i=0;$i<$N;$i++) $x[$i]=rand(-22,22); for($i=0;$i<$N;$i++) echo "$i, $x[$i]<br>"; $i=0; $flag=true; while($i<$N && $flag){ if($x[$i]<0){ $r=2*(int)($x[$i]/2); if($x[$i]<>$r) $flag=false; } $i++; } if(!$flag) echo "INDEX: ",$i-1; ?>
M007. Дан массив целых чисел а0,...,аn-1. Найти количество и сумму тех членов данного массива, которые делятся на 5 и не делятся на 7.
<?php $n=10; $x=array(); for($i=0;$i<$n;$i++) $x[$i]=rand(1,40); for($i=0;$i<$n;$i++) echo"$i|$x[$i] <br>"; $i=0; $p=0; $s=0; while($i<$n ) { $r=5*(int)($x[$i]/5); if($x[$i]==$r) if($r<>7*(int)($r/7)) { $s+=$r; $p++; } $i++; } echo "Миқдор: $s<br>"; echo "Сумма: $p<br>"; ?>
M008. Дан массив действительных чисел а0,...,аn-1. Получить количество отрицательных членов данного массива и пpоизведение элементов, принадлежащих отрезку [b,d].
<?php $n=10; for($i=0;$i<$n;$i++) $x[$i]=rand(-10,20); for($i=0;$i<$n;$i++) echo "$i|$x[$i]<br>"; $b=1; $d=10; $k=0; $p=1; for($i=0;$i<$n;$i++){ $r=$x[$i]; if($r<0) $k++; if($r>=$b && $r<=$d) $p*=$r; } echo "Миқдори аъзоҳои манфӣ: $k"; echo "Ҳосили зарби аъзоҳои аз [b,d]: $p<br>"; ?>
M009. Дан массив целых чисел а0,...,аn-1. Найти все пары (аi,аi+1), такие что аi<=3 и аi+1<0. Распечатать их значения и номеpа. Если таких паp нет, то выдать сообщение.
<?php $N=10; for($i=0; $i<$N; $i++) echo $i,": ",$x[$i]=rand(-20,20),"<br>"; $fl=0; for($i=0; $i<$N-1; $i++) { if($x[$i]<=3 && $x[$i+1]<0) { $fl=1; echo "x[",$i,"]=",$x[$i]," x[",$i+1,"]=",$x[$i+1],"<br>"; } } if(!$fl) echo "Ҷуфтҳои талабшаванда нестанд<br>"; ?>
M010. Дан массив целых чисел а0,...,аn-1. Найти все пары (аi,аi+1),такие,что аi=0 и аi+1 кратно 2.
<?php $N=10; for($i=0; $i<$N; $i++) echo $i,": ",$x[$i]=rand(-8,8),"<br>"; for($i=0; $i<$N-1; $i++) if($x[$i]==0 && $x[$i+1]==2*(int)($x[$i+1]/2)) echo "x[",$i,"]=",$x[$i]," x[",$i+1,"]=",$x[$i+1],"<br>"; ?>
|