function getData($nb, $str) { // echo $nb."\n";////////////////////////////////////////////////// $pattern = "/[+|-]?\\ ?[-|+]?[0-9]*[.]?[0-9]+\\ \\*\\ X\\^[+|-]?" . $nb . "\\ /i"; //$pattern = "/i[+|-]?\ ?[-|+]?[0-9]?[.]?[0-9]+\ +\*\ +X\^[-|+]?".$nb."[.]?[0-9]*\ +/i"; $poly = "X^" . $nb; // echo $pattern."\n";////////////////////////////////////////////////////// // echo $poly."\n";///////////////////////////////////////////////////////// preg_match_all($pattern, $str, $data_tab); // echo count($data_tab);/////////////////////////////////////////////////// // print_r($data_tab);////////////////////////////////////////////////////// $val = getPoly($data_tab[0]); $reduced = addVal($val); if (empty($reduced) == FALSE) { // echo ($reduced).PHP_EOL;////////////// // if ($reduced < 0) // $reduced = "- ".$reduced * -1; // else // $reduced = "+ ".$reduced; return array($str, $reduced . " * " . $poly); } else { return array($str, NULL); } }
// --- TBL: file $file_id = -1; $rslt = addFile($db, $file_id, $pj_id, $sop_id, $tpl_id, $schema_id, $schema_type, $smpl_given_no, $FILE_STATUS_INP, $date, $user_id, $user_id_2, $request_time, $seq_no); if (!$rslt) { \Sop\Log::error(__FILE__, __LINE__, 'Failed to add file.'); $msg008 = "The registration failed.: file"; // 登録に失敗しました: file" \Sop\Api::exitWithError(array($msg008)); } $file_id = getLastId($db); // --- TBL: val $val_id = -1; foreach ($_REQUEST as $val_name => $value) { if (strpos($val_name, 'input_') !== false) { $value = urldecode($value); $rslt = addVal($db, $val_id, $file_id, $val_name, $value); if (!$rslt) { \Sop\Log::error(__FILE__, __LINE__, 'Failed to add val.'); $msg009 = "The registration failed.: val"; // 登録に失敗しました: val \Sop\Api::exitWithError(array("{$msg009} {$value} (: {$val_name})")); } } } // --- TBL: history $history_id = -1; $rslt = addHistory($db, $history_id, $pj_id, $sop_id, $tpl_id, $schema_id, $file_id, $smpl_given_no, $HISTORY_ACTION_FILE_ADD, $date, $user_id, $user_id_2, null); if (!$rslt) { \Sop\Log::error(__FILE__, __LINE__, 'Failed to add history.'); $msg010 = "The registration failed.: history"; // 登録に失敗しました: history
//処理の数 $numberOfProcess = trim(fgets(STDIN)); $val1 = 0; $val2 = 0; for ($i = 0; $i < $numberOfProcess; $i++) { $inputValues = getLineDatasSplitedBySpace(fgets(STDIN)); $process = $inputValues[0]; //$processの入力値に応じて処理を実行 if (preg_match("/SET/", $process)) { if ($inputValues[1] == 1) { $val1 = $inputValues[2]; } else { $val2 = $inputValues[2]; } } elseif (preg_match("/ADD/", $process)) { $val2 = addVal($val1, $inputValues[1]); } else { $val2 = subVal($val1, $inputValues[1]); } } echo $val1 . " " . $val2; //「変数 1 の値 + a」を計算し、計算結果を変数 2 に代入する function addVal($val, $int) { $val2 = $val + $int; return $val2; } //「変数 1 の値 - a」を計算し、計算結果を変数 2 に代入する function subVal($val, $int) { $val2 = $val - $int;