1. 程式人生 > >藍橋杯 演算法訓練 sign函式

藍橋杯 演算法訓練 sign函式

問題描述
  給定實數x,輸出sign(x)的值。

  sign(x)是符號函式,如果x>0,則返回1;如果x=0,則返回0;如果x<0,則返回-1。
輸入格式
  一行一個實數x。
輸出格式
  一行一個整數表示答案。
樣例輸入
-0.0001
樣例輸出
-1
資料規模和約定
  |x|<=10000,輸入資料精度最多達到4位小數。
提示
  判斷實數x是否等於零時,由於計算機實數運算誤差,應當引入極小量eps,核心程式碼如下:
  其中fabs為cmath中的絕對值函式。
  const double eps=1e-6;

  if (fabs(x) <= eps) {
  //x是零
  }

#include <iostream>

using namespace std;

int sign(double x) {
    if (x > 0)
        return 1;
    else if (x == 0)
        return 0;
    else
        return -1;
}
int main() {
    double a;
    cin >> a;
    cout << sign(a);
    cin >> a;
    return 0;
}

相關推薦

藍橋 演算法訓練 sign函式

問題描述   給定實數x,輸出sign(x)的值。   sign(x)是符號函式,如果x>0,則返回1;如果x=0,則返回0;如果x<0,則返回-1。 輸入格式   一行一個實數x。

藍橋-演算法訓練-sign函式(java)

問題描述   給定實數x,輸出sign(x)的值。   sign(x)是符號函式,如果x>0,則返回1;如果x=0,則返回0;如果x<0,則返回-1。 輸入格式   一行一個實數x。 輸出

藍橋 演算法訓練 字母圖形

問題描述 利用字母可以組成一些美麗的圖形,下面給出了一個例子: ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 這是一個5行7列的圖形,請找出這個圖形的規律,並輸出一個n行m列的圖形。 輸入格式 輸入一行

藍橋 演算法訓練 區間k大數查詢

明明是一個水題卻wrong answer了很多遍。。 還是因為對最基礎的氣泡排序概念不清。蠢死算了。 這下終於搞清楚了。 問題描述 給定一個序列,每次詢問序列中第l個數到第r個數中第K大的數是哪個。 輸入格式 第一行包含一個數

藍橋-演算法訓練 未名湖邊的煩惱 (遞迴)

 演算法訓練 未名湖邊的煩惱   時間限制:1.0s   記憶體限制:256.0MB      問題描述   每年冬天,北大

[藍橋][演算法訓練VIP]猴子分蘋果

題目描述 秋天到了,n只猴子採摘了一大堆蘋果放到山洞裡,約定第二天平分。這些猴子很崇拜猴王孫悟空,所以都想給他留一些蘋果。第一隻猴子悄悄來到山洞,把蘋果平均分成n份,把剩下的m個蘋果吃了,然後藏起來一份,最後把剩下的蘋果重新合在一起。這些猴子依次悄悄來到山洞,都做同樣的操作,恰好每次

藍橋演算法訓練 最大最小公倍數

時間限制:1.0s   記憶體限制:256.0MB 問題描述 已知一個正整數N,問從1~N-1中任選出三個數,他們的最小公倍數最大可以為多少。 輸入格式 輸入一個正整數N。 輸出格式 輸出一個整數,表示你找到的最小公倍數。 樣例輸入 9 樣例輸出

藍橋 演算法訓練 ALGO-81 動態陣列使用

演算法訓練 動態陣列使用 時間限制:1.0s 記憶體限制:512.0MB 從鍵盤讀入n個整數,使用動態陣列儲存所讀入的整數,並計算它們的和與平均值分別輸出。要求儘可能使用函式實現程式程式碼。平均值為小數的只保留其整數部分。 樣例輸入: 5 3 4 0 0 2 樣例輸出: 9 1 樣例

藍橋 演算法訓練 ALGO-122 未名湖邊的煩惱 遞迴 遞推

演算法訓練 未名湖邊的煩惱 時間限制:1.0s 記憶體限制:256.0MB 問題描述   每年冬天,北大未名湖上都是滑冰的好地方。北大體育組準備了許多冰鞋,可是人太多了,每天下午收工後,常常一雙冰鞋都不剩。   每天早上,租鞋視窗都會排起長龍,假設有還鞋的m個,有需要租鞋的n個。現在

藍橋 演算法訓練 ALGO-116 最大的算式 動態規劃 資源分配型別(最大乘積)

演算法訓練 最大的算式 時間限制:1.0s 記憶體限制:256.0MB 問題描述   題目很簡單,給出N個數字,不改變它們的相對位置,在中間加入K個乘號和N-K-1個加號,(括號隨便加)使最終結果儘量大。因為乘號和加號一共就是N-1個了,所以恰好每兩個相鄰數字之間都有一個符號。例如:

藍橋 演算法訓練 ALGO-101 圖形顯示 迴圈語句

演算法訓練 圖形顯示 時間限制:1.0s 記憶體限制:512.0MB 問題描述   編寫一個程式,首先輸入一個整數,例如5,然後在螢幕上顯示如下的圖形(5表示行數):   * * * * *   * * * *   * * *   * *   * 分析:第一行輸出n個星號,

藍橋 演算法訓練 ALGO-97 排序 迴圈語句

演算法訓練 排序 時間限制:1.0s 記憶體限制:512.0MB 問題描述   編寫一個程式,輸入3個整數,然後程式將對這三個整數按照從大到小進行排列。   輸入格式:輸入只有一行,即三個整數,中間用空格隔開。   輸出格式:輸出只有一行,即排序後的結果。   輸入輸出樣例 樣例輸入

藍橋 演算法訓練 ALGO-95 2的次冪表示

演算法訓練 2的次冪表示 時間限制:1.0s 記憶體限制:512.0MB 問題描述   任何一個正整數都可以用2進製表示,例如:137的2進製表示為10001001。   將這種2進製表示寫成2的次冪的和的形式,令次冪高的排在前面,可得到如下表達式:137=27+23+2^0   現

藍橋 演算法訓練 ALGO-92 字首表示式 字元操作 數學知識

演算法訓練 字首表示式 時間限制:1.0s 記憶體限制:512.0MB 提交此題 問題描述   編寫一個程式,以字串方式輸入一個字首表示式,然後計算它的值。輸入格式為:“運算子 物件1 物件2”,其中,運算子為“+”(加法)、“-”(減法)、“*”(乘法)或“/”(除法),運算物件為

藍橋 演算法訓練 ALGO-91 Anagrams問題 陣列運算 字元操作

演算法訓練 Anagrams問題 時間限制:1.0s 記憶體限制:512.0MB 提交此題 問題描述   Anagrams指的是具有如下特性的兩個單詞:在這兩個單詞當中,每一個英文字母(不區分大小寫)所出現的次數都是相同的。例如,“Unclear”和“Nuclear”、“Rimon”

藍橋 演算法訓練 ALGO-90 出現次數最多的整數 陣列運算

演算法訓練 出現次數最多的整數 時間限制:1.0s 記憶體限制:512.0MB   問題描述   編寫一個程式,讀入一組整數,這組整數是按照從小到大的順序排列的,它們的個數N也是由使用者輸入的,最多不會超過20。然後程式將對這個陣列進行統計,把出現次數最多的那個陣列元素值打印出來。

藍橋 演算法訓練 ALGO-87 字串統計

演算法訓練 字串統計 時間限制:1.0s 記憶體限制:512.0MB 問題描述   給定一個長度為n的字串S,還有一個數字L,統計長度大於等於L的出現次數最多的子串(不同的出現可以相交),如果有多個,輸出最長的,如果仍然有多個,輸出第一次出現最早的。 輸入格式   第一行一個數字L。

藍橋 演算法訓練 ALGO-86 矩陣乘法

演算法訓練 矩陣乘法 時間限制:1.0s 記憶體限制:512.0MB 提交此題 問題描述   輸入兩個矩陣,分別是 m ×

藍橋 演算法訓練 ALGO-84 大小寫轉換 字元操作

演算法訓練 大小寫轉換 時間限制:1.0s 記憶體限制:512.0MB 提交此題 問題描述   編寫一個程式,輸入一個字串(長度不超過20),然後把這個字串內的每一個字元進行大小寫變換,即將大寫字母變成小寫,小寫字母變成大寫,然後把這個新的字串輸出。   輸入格式:輸入一個字串,而且