Мисоли 40. Ду матрисаи квадратии бутуни А(N,N) ва B(N,N), ки тартибашон ба адади N баробар аст, дода шудаанд. Элементи мусбии матрисаи А(N,N), ки бисёртар такрор меёбад, ва элементи манфии матрисаи В(N,N), ки бисёртар такрор меёбад, муайян карда шаванд. Қимати ин элементҳо ва миқдори такрорёбии онҳо чоп карда шаванд.
<?php //интихоби тасодуфии тартиби матритсаи квадратии А, тартиби N $N=rand(3,7); echo "N=$N<br>"; ?> <p><b>Матрица A:</b> <table border="1"> <?php for($i=0; $i<$N; $i++) { ?> <tr> <?php for($j=0; $j<$N; $j++) { ?> <td> <?php //қиматҳои тасодуфӣ ба элементҳои матритсаи A echo "a<sub>$i$j</sub>=", $a[$i][$j]=rand(-1,6); ?> </td> <?php } ?> </tr> <?php } ?> </table> <p><b>Матрица B:</b> <table border="1"> <?php for($i=0; $i<$N; $i++) { ?> <tr> <?php for($j=0; $j<$N; $j++) { ?> <td> <?php //қиматҳои тасодуфӣ ба элементҳои матритсаи B echo "b<sub>$i$j</sub>=", $b[$i][$j]=rand(-6,1); ?> </td> <?php } ?> </tr> <?php } ?> </table> <?php //// коркарди матритсаи A - ибтидо //массиви a_unique барои қиматҳои уникалии мусбати матритсаи A $flag=true; for($i=0; $i<$N && $flag; $i++) for($j=0; $j<$N && $flag; $j++) if($a[$i][$j]>0){ $a_unique[0] = $a[$i][$j]; $flag = false; } $a_count[]=0; $l = 1; for($i=0; $i<$N; $i++) for($j=0; $j<$N; $j++){ $k = 0; while($k<$l && $a[$i][$j]>0 && $a_unique[$k]!=$a[$i][$j]) $k++; if($k==$l && $a[$i][$j]>0){ $a_count[]=0; $a_unique[$l++]=$a[$i][$j]; } } //ҳисоби миқдори такрорёбии аъзоҳои массиви a_unique for($k=0; $k<$l; $k++) for($i=0; $i<$N; $i++) for($j=0; $j<$N; $j++) if($a_unique[$k]==$a[$i][$j]) $a_count[$k]++; ?> <p>чоп намудани массиви a_unique <br>ва миқдори такрорёбии аъзоҳои он:<br> <?php //чоп намудани массиви a_unique, қиматҳои уникалии мусбати матритсаи A //ва массиви a_count - миқдори такрорёбии аъзоҳои он for($i=0; $i<$l; $i++) echo $a_unique[$i]," -> ",$a_count[$i],"; "; //ёфтани максимуми массиви a_count $max=$a_count[0]; for($i=1; $i<$l; $i++) if($max<$a_count[$i]) $max=$a_count[$i]; ?> <p>Элементҳои мусбати бисёртар такрорёбандаи матритсаи A
ва миқдори такрорёбии онҳо: <?php //чоп намудани элементҳои мусбати бисёртар такрорёбандаи матритсаи A //ва миқдори такрорёбии онҳо for($i=0; $i<$l; $i++) if($max==$a_count[$i]) echo "<br>",$a_unique[$i]," <--> ",$a_count[$i],"; "; //// коркарди матритсаи A - итмом ?> <?php //// коркарди матритсаи B - ибтидо //массиви b_unique барои қиматҳои уникалии мусбати матритсаи B $flag=true; for($i=0; $i<$N && $flag; $i++) for($j=0; $j<$N && $flag; $j++) if($b[$i][$j]<0){ $b_unique[0] = $b[$i][$j]; $flag = false; } $b_count[]=0; $l = 1; for($i=0; $i<$N; $i++) for($j=0; $j<$N; $j++){ $k = 0; while($k<$l && $b[$i][$j]<0 && $b_unique[$k]!=$b[$i][$j]) $k++; if($k==$l && $b[$i][$j]<0){ $b_count[]=0; $b_unique[$l++]=$b[$i][$j]; } } //ҳисоби миқдори такрорёбии аъзоҳои массиви b_unique for($k=0; $k<$l; $k++) for($i=0; $i<$N; $i++) for($j=0; $j<$N; $j++) if($b_unique[$k]==$b[$i][$j]) $b_count[$k]++; ?> <p>чоп намудани массиви b_unique <br>ва миқдори такрорёбии аъзоҳои он:<br> <?php //чоп намудани массиви b_unique, қиматҳои уникалии манфии матритсаи B //ва массиви b_count - миқдори такрорёбии аъзоҳои он for($i=0; $i<$l; $i++) echo $b_unique[$i]," -> ",$b_count[$i],"; "; //ёфтани максимуми массиви b_count $max=$b_count[0]; for($i=1; $i<$l; $i++) if($max<$b_count[$i]) $max=$b_count[$i]; ?> <p>Элементҳои манфии бисёртар такрорёбандаи матритсаи B
ва миқдори такрорёбии онҳо: <?php //чоп намудани элементҳои манфии бисёртар такрорёбандаи матритсаи B //ва миқдори такрорёбии онҳо for($i=0; $i<$l; $i++) if($max==$b_count[$i]) echo "<br>",$b_unique[$i]," <--> ",$b_count[$i],"; "; //// коркарди матритсаи B - итмом ?>