#50963089 · 14 Jul 2017, 15:08 · · პროფილი · პირადი მიმოწერა · ჩატი
კოდი დაწერილიაPHP_ზე და მუშაობს მხოლოდ 99_ის ჩათვლით. სტრინგებთან და რიცხვებთან სამუშაოდ კარგი მაგალითია შეგიძლიათ გააფართოვოთ მაგალითად ისე რომ მუშაობდეს 1000 000_მდე. როდესაც ფორმაში რიცხვს შეიყვანთ ეს რცხვი უნდა დაიწეროს სიტყვებით.
ინდექს ფაილი: <?php include_once("variable.php"); if($_SERVER["REQUEST_METHOD"] == "POST") { $EntNumber = $_POST['number'];
$numlength = strlen((string)$EntNumber); //ითვლის შეტანილი რიცხვში რამდენი ციფრია $last = substr((string)$EntNumber,-2); // გამოაქვს შეტანილი რიცხვის ბოლო ციფრი $midle = substr((string)$EntNumber,1); // ბოლო ორი ციფრი. $first = (string)$EntNumber;
for($w==1;$w<100;$w++) { if($w == $EntNumber) { echo sityvebi($w); goto end; }
if( $EntNumber >=21 && $EntNumber<=39) //ამოწმებს თუ შეტანილ რიცხვში ციფრების რაოდენობა არის 2 და რიცხვი 21 დან 30 მდეა. { echo 'ოცდა'; echo sityvebi($EntNumber%20); goto end; } if( $EntNumber >=41 && $EntNumber<=59) //ამოწმებს თუ შეტანილ რიცხვში ციფრების რაოდენობა არის 2 და რიცხვი 21 დან 30 მდეა. { echo 'ორმოცდა'; echo sityvebi($EntNumber%20);
goto end;
} if( $EntNumber >=61 && $EntNumber<=79) //ამოწმებს თუ შეტანილ რიცხვში ციფრების რაოდენობა არის 2 და რიცხვი 21 დან 30 მდეა. { echo 'სამოცდა'; echo sityvebi($EntNumber%20); goto end; } if( $EntNumber >=81 && $EntNumber<=99) //ამოწმებს თუ შეტანილ რიცხვში ციფრების რაოდენობა არის 2 და რიცხვი 21 დან 30 მდეა. { echo 'ოთხმოცდა'; echo sityvebi($EntNumber%20); goto end; } } $sum =0; //ვუტოლებ ნოლს იმიტომ რომ არ დაწეროს note_ი. functi0n SamNishna($sum) { //ფუნქციას გადავცემ გადაცემული რიცხვის პირველ სიმბოლოს ვამოწმებ რომელი სიმბოლოა და შესაბამისად გამომაქვს მისი შესატყვისი სიტყვა.
switch ($sum) {
case 1:echo "ას";break; case 2:echo "ორას";break; case 3:echo "სამას";break; case 4:echo "ოთხას";break; case 5:echo "ხუთას";break; case 6:echo "ექვსას";break; case 7:echo "შვიდას";break; case 8:echo "რვაას";break; case 9:echo "ცხრაას";break;
} } SamNishna($first[0]);
if($numlength == 3 && $last >0 ) { //gavaketo samnishna ricxvis shuaricxvis gamotana da gavutolo $lasts
if( $last >=21 && $last<=39) //ამოწმებს თუ შეტანილ რიცხვში ციფრების რაოდენობა არის 2 და რიცხვი 21 დან 30 მდეა. { echo SamNishna($sum) .'ოცდა';
echo sityvebi($last%20);
goto end; } if( $last >=41 && $last<=59) //ამოწმებს თუ შეტანილ რიცხვში ციფრების რაოდენობა არის 2 და რიცხვი 21 დან 30 მდეა. { echo SamNishna($sum). 'ორმოცდა'; echo sityvebi($last%20);
goto end;
// echo $first[0]; // echo "<br>". $last; } if( $last >=61 && $last<=79) //ამოწმებს თუ შეტანილ რიცხვში ციფრების რაოდენობა არის 2 და რიცხვი 21 დან 30 მდეა. { echo SamNishna($sum).'სამოცდა'; echo sityvebi($last%20); goto end; } if( $last >=81 && $last<=99) //ამოწმებს თუ შეტანილ რიცხვში ციფრების რაოდენობა არის 2 და რიცხვი 21 დან 30 მდეა. { echo SamNishna($sum).'ოთხმოცდა'; echo sityvebi($last%20); goto end; }
} else if($numlength == 3 && $last == '00') { //წერს ას,ორას სამას და ა.შ. და უმატებს 'ი' _ს. echo SamNishna($sum) .'ი';
}
if($numlength == 3 ) //თუ მხოლოდ ის პირობა სრულდება რომ რიცხვი სამნიშნაა წერს წინას სიტყვას ას,ორას,სამას, და ა.შ. და ბაზიდან მოაქვს დანარჩენი რიცხვის მნიშვნელობა { echo SamNishna($sum); echo sityvebi($midle); goto end; }
end: //როდესაც რომელიმე კოდი შესრულდება კოდი გადმომისამართდება goto_ს საშუალებით აქ და შემდეგ კოდი გააგრძელებს მუშაობას. }
?>
<html> <body> <form action="" method='POST'> <input type="text" name='number'> <button type="submit" name='submit' >გადაყვანა </button> </form>
</body> </html>
ვარიაბლე ფაილი: <?php global $w; functi0n sityvebi ($w){ switch ($w) {
case 1: echo "ერთი"; break;
case 2: echo "ორი"; break;
case 3: echo "სამი"; break;
case 4: echo "ოთხი"; break;
case 5: echo "ხუთი"; break;
case 6: echo "ექვსი"; break;
case 7: echo "შვიდი"; break;
case 8: echo "რვა"; break;
case 9: echo "ცხრა"; break;
case 10: echo "ათი"; break;
case 11: echo "თერთმეტი"; break;
case 12: echo "თორმეტი"; break;
case 13: echo "ცამეტი"; break;
case 14: echo "თოთხმეტი"; break;
case 15: echo "თხუთმეტი"; break;
case 16: echo "თექვსმეტი"; break;
case 17: echo "ჩვიდმეტი"; break;
case 18: echo "თვრამეტი"; break;
case 19: echo "ცხრამეტი"; break;
case 20: echo "ოცი"; break;
case 40: echo "ორმოცი"; break;
case 60: echo "სამოცი"; break;
case 80: echo "ოთხმოცი"; break;
}
}
?>
|