|
|
|
php รบกวนดูให้ทีครับ เรื่องของการการวนลูปบวกค่าทีละตัว ที่มีตัวหนังสือปนอยู่ |
|
|
|
|
|
|
|
strlen($text)
loob $text[array]
gettype($text[array])
if type != int
else $text = $text+$text[array]
กำตอบผิดเรื่อง
|
ประวัติการแก้ไข 2013-06-07 17:16:53 2013-06-07 17:17:46
|
|
|
|
Date :
2013-06-07 17:14:33 |
By :
bankza009 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอโทดนะครับ โค้ดที่ให้มา งงจังเลยฮะ แหะๆ
|
|
|
|
|
Date :
2013-06-07 17:18:52 |
By :
champkung226 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แป่วๆ 555555555
|
|
|
|
|
Date :
2013-06-07 17:19:13 |
By :
champkung226 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าจะอ่านค่าของตัวแปรเดี่ยวๆ ที่อยู่ใน scope ผ่านชื่อของมัน
ลองศึกษา Variable variables ครับ
Code (PHP)
<?php
$A = 1;
$B = 2;
$C = 3;
$txt = 'AB123C567890';
$n = strlen($txt);
$sum = 0;
for ($i = 0; $i < $n; $i++) {
$char = $txt[$i];
if (is_numeric($char)) {
$sum += $char;
} elseif (isset($$char)) {
$sum += $$char;
}
}
echo $sum;
แต่ถ้าใช้ array ก็จะดูเข้าใจง่ายกว่าครับ
Code (PHP)
<?php
$vars = array(
'A' => 1,
'B' => 2,
'C' => 3,
);
$txt = 'AB123C567890';
$n = strlen($txt);
$sum = 0;
for ($i = 0; $i < $n; $i++) {
$char = $txt[$i];
if (is_numeric($char)) {
$sum += $char;
} elseif (isset($vars[$char])) {
$sum += $vars[$char];
}
}
echo $sum;
|
|
|
|
|
Date :
2013-06-07 17:22:42 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณฮะ ของลองแปบครับ คิคิ
|
|
|
|
|
Date :
2013-06-07 17:24:04 |
By :
champkung226 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่รู้ว่าจะตรงมั้ย
ผมทำไว้ตั้งแต่ปีมะโว้แล้ว 5555+
Code (PHP)
<form method="GET" action="<?php echo $_SERVER['PHP_SELF'];?>">
<fieldset>
<legend>เข้ารหัส</legend>
<input id="key" type="text" name="key" value="<?php if(isset($_GET['key'])) echo $_GET['key']; ?>" />
<input type="button" name="submit" value="เข้ารหัส">
</fieldset>
</form>
<br>
<br>
<?php
if(isset($_GET['key'])) $str = $_GET['key'];
else $str = "AZ09";
$sum = 0;
$cache = array();
$len = strlen($str);
for($i=0;$i<$len;$i++){
$ascii = ord($str[$i]);
if(!isset($cache[$str[$i]])){
if($ascii>=48 && $ascii<=57) $cache[$str[$i]] = ($ascii-48); //number
else $cache[$str[$i]] = ($ascii-64);
}
$sum += $cache[$str[$i]];
//printf('%d ',$ascii);
//printf('%d ',$cache[$str[$i]]);
}
echo $sum;
?>
|
ประวัติการแก้ไข 2013-06-07 17:28:47
|
|
|
|
Date :
2013-06-07 17:26:57 |
By :
itpcc |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อุ้ย ขอบคุณทุกคนคร้าบบ ความรู้ใหม่ แหะๆ จะนำไปลองทุกวิธีนะฮะ
|
|
|
|
|
Date :
2013-06-07 17:30:46 |
By :
champkung226 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|