1.开车驾驶油耗的计算方法有哪些

2.求百公里油耗算法: 比如40升油跑了500公里 合百公里油耗多少 求算法

3.我想知道队列算法能干什么

油价算法永远涨价了吗是真的吗_油价算法永远涨价了吗是真的吗知乎

充分的市场竞争,可以让商品价格达到合理水平,只要没形成垄断寡头,价格往往会根据市场供需关系正常化波动。

国内油价如同一团迷雾,被吐槽极多,但是缺乏权威的解读。得利者闷声发大财,还能没事嗷嗷哭两嗓子要个百十亿补贴贴补家用,爽的不要不要的。

今天财智成功从成本和产出角度对油价进行简单的分析,希望能够从一定程度上为大家解决疑惑。

1桶原油=159升=139公斤2007年第三季度,中石油加工原油2.03亿桶,也就是2821.7万吨,生产汽油543.4万吨、柴油1,161.2万吨、煤油54.2万吨。

按照上面的数据,一桶原油可以提炼出26.77公斤汽油,57.2公斤柴油,2.67公斤煤油。

要知道按照质量守恒定律,139公斤炼完远不止这点东西,还会有沥青和部分化工原料,这部分产品足以抵消炼油成本和运输成本,甚至其中已经有了利润。

为了简单一些,我们以整数1美元兑换7元人民币进行计算。

40美元一桶油时,280元人民币,由于汽油柴油煤油价格当前差不多,我们依然简单来计算,总共生产出26.77+57.2+2.67=86.64公斤汽柴煤油,一升汽油大概0.72公斤,一升柴油大概0.85公斤,煤油太少直接忽略,由于柴油产量更多一些,我们就按0.8公斤来计算。

一桶石油,最后产出108升汽柴油,一升的成本是1.93元。

50美元一桶石油时,350元人民币,一升成本3.24元。

80美元时,560元人民币,一升成本5.19元。

100美元一桶时,700元人民币,一升成本6.48元。

这是比较笼统的算法,实际一定是高估了的。因为报道的数据不一定真实,有可能人为的增加了损耗,从而制造亏损。所以上面忙活半天,我们只是为了算出经过人为润色加工后最高的成本。

我们再从出口的角度测算成本,下图是2017年7月-2018年6月我国汽油出口情况:

最后算下来,以2018年6月份75美元一桶油价计算,先扣除税费25%,一升是2.62元,再去掉毛利润20%,一升汽油的成本就是2.09元人民币,远低于第一种算法,巨大的差异只能说明报道中公布的数据一定被人为润色修饰了。

2016年1月份报道,中国香港籍油轮;长航发展轮装载1批3.8万吨、货值1444万美元的92号汽油从肖厝港区青兰山码头出口新加坡

虽说是宣称来料加工,出口免征增值税和消费税,但是货值和吨数在那里摆着,显然很能说明问题,与上面算法算出来的价格其实差别不大。

第三种算法,技术派

1909年炼油技术获得突破,以热力分馏产生的合成汽油,使每桶原油可产生60%汽油,15%柴油,15%煤油,剩下的10%沥青。

大规模炼油具体到一桶原油上,成本是极低的,10%的沥青以及部分化工原料完全可以抵消炼油成本。就跟花生油榨油后如果渣滓不要的话可以免费加工一样。

我们就按一桶油能产出85%的成品油,剩余部分全部作为炼油成本和运输成本,这样一桶原油139公斤可以出产118公斤成品油,还按照上面的0.8公斤每升计算,可以生产出147.5升成品油。

还是简单以一美元兑换七元人民币进行核算。

40美元一桶原油时,280美元对应147.5升成品油,1.9元人民币一升。

50美元时,2.37元一升。

60美元时,2.85一升。

70美元时,3.32元一升。

80美元时,3.8元一升。

90美元时,4.27元一升。

100美元时,4.75元一升。

120美元时,5.69元一升。

140美元时,6.64元一升。

不论何时,请不要忘记我国也是能产原油的,即便是进口依赖度提升到60%,国产原油也是能占到40%的。而国产原油的成本远低于50美元一桶。

所以综合来说,即便是国际原油140美元一桶时,综合成本也不会高于90美元一桶,也就是汽油成本不会高出4.27元一升。

2016年国内成品油价格均为含税价格,包括增值税、消费税、城建税、教育附加费等,税负累计3100-3300元/吨。此后有两三次本该降价时取了增加消费税的措施,使得税费比例进一步提高。

我们就以一吨汽油各种税费3500元来计算,具体到一升中,一升0.72公斤,一吨就是1389升,每升就是2.52元。

如今国际油价已经达到60美元附近,那么国内油成本加上税费应该是2.85+2.52=5.37元/升。多出部分就是两桶油的利润喽。

一道题从下午算到晚上,最后继续推荐财智成功打造的加百利网加百利点靠木,网购可以每天中午看看,省钱还能选择正品,跑赢通货膨胀的首选。

开车驾驶油耗的计算方法有哪些

1.为什么油箱容积都不准

《汽车燃油箱安全性能要求和试验方法》规定:汽车燃油箱的额定容量应控制在燃油箱最大安全容量的95%。也就是说,如果你的车配置表上写着油箱容积为60L,那么实际容积则是63L(有的甚至更大),多出那3L是国家和汽车厂商出于安全考虑,给油箱留出的余量。

2.油表指针真的准确吗?

大部分汽车油表是用浮子的方式带动油表指针显示油箱存油量,仅通过液面高度来判断油量,自然是不准确的。虽然有的厂商会根据油箱形状,通过算法调整油表指针来做修正,但即便如此,液面计油的方式仍然是不准确滴,一般都会有些误差。

3.加油频繁跳枪咋回事?

简单来说,就是油液淹没进气嘴,大气压的压差导致开关自动关闭。导致频繁“跳枪”的原因,很有可能是油枪插入的姿势不对,影响到了空气与开关膜上腔之间的连通,导致提前产生气压差,以至于油枪关闭。

4.早上加油能“赚”吗?

正规加油站,汽油柴油存在地下储油罐中,而且这个储油罐还有多层的防腐套装,基本上和地面温度做到了隔绝,早晚温差对地下储油罐的影响微乎其微。也就是说,你加满一个油箱,也就“赚”了不到1块钱。而且你还免不了要把油箱撑满吧?

5.雷雨天最好不加油

在雷雨天气状态下加油,加油枪极易将电流导入汽车油箱,从而造成不稳定汽油的分子运动加剧,从而引发火灾、爆炸等安全隐患。而在加油站中,燃油蒸汽浓度相比于其他地方明显要高出很多,如果还继续进行加油操作,燃油蒸汽容易被雷击中,导致车辆和油罐发生爆炸。

6.发现油罐车先不加油

如果你正准备进站加油,发现油槽上停着一部油罐车,这个时候请调转车头继续找下一家加油站。因为油罐车补充的油料,会涌起槽底多年的沉积,很有可能就加到你的油箱里。如果这些杂质进入到发动机缸内,会影响发动机使用寿命。

7.一次不要加得太满

为油箱加油,最好控制在安全容积内,油枪自动跳枪时应停止加油,给油箱留有一定的安全挥发空间。如果汽油加到油箱口部,多余汽油会进入汽油蒸发系统管路,造成混合气过浓,这样会对发动机造成损坏。

8.标号越高越好吗?

车主只需按照车辆使用手册建议的标号去加油即可,不能随便降低标号,但是也不需要自己人为地使用高标号。92和95其实只是油气的标号,代表的是抗爆性,化学术语叫做汽油的辛烷值,它真心与清洁度没有关系,适合的才是最好的。

求百公里油耗算法: 比如40升油跑了500公里 合百公里油耗多少 求算法

开车的时候我们可能会很纠结不知道应该怎么去节省油耗,又怎么在油耗的时候做好一个耗油的计算呢,那么开车油耗应该怎么去计算呢?以下是懂视小编为你整理的开车油耗的算法,希望能帮到你。

开车油耗的算法油耗通常是按百公里来计的,就像你表显的百公里的平均油耗为8.8L,那你听人家说他的车车油耗低才百公里9.0升,你就可以告诉他,你更低,才8.8,当然实际的油耗与表显的是有差别的,通常人们算真实的油耗是通过加满油后,跑了N公里后,再加满时需要多少升这么来换算的,比如加满后跑了一百公里,再去加满时约加了7升,那么通过几次这样的试验都是7升左右,你就可以初步的断定你车的油耗在百公里7升左右.车的油耗受路况的影响特别大,在城里堵车的情况下,一般实际油耗比表显的要大2到3升,高速路上实际油耗都比较低,表显比较准确一些......然后按公里算大家一般习惯于说是每公里多少钱,这个要和你当地的油价来一起算.比如你的车车算出来1公里油耗0.088升,那么用0.088在乘油价就是一公里所投的金钱.

开车省油的方法1、起步前热车

起步,适当热车。越来越多的车友了解了热车并不是原地轰油门,在点火时慢速前进直至水温正常。现在的很多车友都是过于着急了,一点火,刚才还想着热车,结果还是一脚油门轰走了。

2、不要猛踩油门

尽量不要猛踩油门,这样会造成汽车的发动机大量的?吃油?,造成不必要的浪费,并且对汽车的伤害也是非常大的。

3、控制汽车的行驶转速

一般电喷车的发动机转数在2200-2500左右最合适。不论在哪个档位,均保持发动机转数在2200-2500左右。过低转速车走不动,耗油不走道,还伤发动机;过高转速增加无效油耗,也伤发动机。

4、最省油的行驶速度

汽车在行驶中应当用直接档中速行驶,这样可以节省油耗。一般轿车的经济时速在65~90km/h之间。当汽车运行在经济时速时是最省油的。如果行车时没有遇到特殊的情况,可以保持一定的行驶速度,并且以匀速直线行驶,才是最省油的。

5、控制换档转速和行驶档位

手动档控制换档转速:换档时要比正常行驶状态略微多加一点油,让转速表达到2500多一点。如果低于2000转时换档,换档后速度还要往下降,有脱档的感觉,还得加油找回来,反而要多耗油。

自动档行驶档位:低速或陡峭山坡用1档,上下长坡或大坡用2档,起伏不平路或二级路或在市区当速度低于60公里时用3档,当车速大多超过60时应该使用D档行驶,省油又静声。

6、等红灯

20秒以内的短红灯。直接踩刹车,减少换挡过程对变速箱的冲击,也更加方便。

20-60秒的长红灯。脚踩刹车费力,一旦疲劳松脚容易造成追尾事故。此时可挂空档,让双脚适当放松,又避免车辆频繁启停对电频的磨损。

60秒以上可熄火等待。有人可能会不服气,启动瞬间油耗也大。但数据表明:热启动一次消耗的燃油相当于怠速运行6-7秒的油耗。所以相对长时间怠速来说,热启动更加省油,对启动电机寿命的影响也微乎其微。(路口一般不建议熄火,中高档车有起停功能另当别论)

7、刹车最佳方式

当发现前方较远处是红灯、且路上车较少时,老司机不会急于空挡刹车,而是松油门、让发动机均匀滞速。

在绝大部分情况下,带档刹车比空档刹车的制动距离会小很多。如果我们有足够的时间,就可以用这种方法刹车,不只平稳,还省油。特别是高速行驶的满载货车,这种刹车方式当是首选!

8、堵车,避见缝插针

见缝插针的行车方式往往最容易伴随着急刹。而急刹后紧跟着就是急加油,毫无疑问,更加费油。

9、注意日常的保养

关于这一点,我们需要知道的是,只有在汽车最好的条件下,汽车才能很好的形式,而对于?患病?车辆会在无形中消耗你的汽油。保持良好车况。定期更换机油,检查三滤(汽油、空气、机油滤清器)和胎压。

保养不佳的发动机油耗增加10%或20%,空气滤清器过脏,也可能导致油耗增加10%。按厂家要求,行驶一定公里更换一次机油,并检查过滤器。

轮胎气压不足,滚动阻力会大大增加。根据测试,胎压比规定值低2psi,油耗会增加1%。因此,最好每月检查一次胎压。

10、关于开窗省油还是开空调省油

低速驾车时可以开窗降温,而中高速行驶时打开空调更为划算。研究发现,当车速高于85km/h后,开窗后的空气阻力所消耗的燃油要比空调系统消耗的燃油更多。

11、不要让后备厢里的杂物增加油耗

除非是必要,否则还是清空行李厢清理车后后备厢里多余的东西,这会增加汽车的负担,轿车不是货车,不需要带的东西尽可能不要带在车上。

12、平时就带半箱油跑吧

减轻车身重量,就是降低耗油量。不要装了满满一箱油在市内跑近道,这就是?油耗油?!考虑到汽油泵装在油箱里,靠汽油散热降温,所以如果不出远门,保持半箱油最好。

猜你感兴趣:

1.开车要注意的驾驶意识有什么

2.开车驾驶时需要带哪些证件上路

3.开车驾驶踩油门的技巧有哪些

4.开车驾驶上路要带的证件有什么

5.新手驾驶开车要注意的问题有什么

我想知道队列算法能干什么

40升油跑了500公里合百公里油耗为8L,具体计算方法如下:

40L÷500km=8L/km,如当日93#油价为6.5元,折合人民为=8L/kmx6.5元/100=0.52元/km。

油耗的测量方法:

可以到固定加油站,在同样的加油站用同样的加油枪把油加到跳枪或慢慢的加到刚刚流出时后,把里程表归零,可以专门跑一趟100公里或长途,也可以就是实际上下班使用的里程,跑到附油箱加油告急灯亮时,再到同样的加油站用同样的加油枪把油加到跳枪或慢慢的加到刚刚流出时计算加进多少油。用加的油和跑的公里数计算出百公里的油耗。

扩展资料:

权威的油耗测试

在专门的实验车场的专门跑道上,在规定的湿度、气压、胎压等,在满载等速的条件下(秤重坐满人和后背箱加配重物);用专门的计量仪器(带刻度的量杯、流量计等)切断车辆原来的供油系统,用计量仪器量杯内的油跑几十或百米(好象是这样的,不计算加速时的油耗,不能滑行)的来回路后,除二计算出的百公里等油耗等的数据。

比较准确的油耗测试

由专门的人选择实验的路,用专门的带刻度的油箱跑100公里的来回路后(可以计算进加速时的油耗,但是不能滑行),除二计算出的实际百公里等油耗的数据。

百度百科-油耗

队列是一种先进先出的数据结构,由于这一规则的限制,使得队列有区别于栈等别的数据结构。

作为一种常用的数据结构,同栈一样,是有着丰富的现实背景的。以下是几个典型的例子。

[例5-2] 一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(设出发时油箱是空的).给定两个城市之间的距离D1,汽车油箱的容量C(以升为单位),每升汽油能行驶的距离D2,出发点每升汽油价格P和沿途油站数N(N可以为零),油站i离出发点的距离Di,每升汽油价格Pi(i=1,2,……N).

计算结果四舍五入至小数点后两位.

如果无法到达目的地,则输出"No Solution".

样例:

INPUT

D1=275.6 C=11.9 D2=27.4 P=2.8 N=2

油站号I

离出发点的距离Di

每升汽油价格Pi

1

102.0

2.9

2

220.0

2.2

OUTPUT

26.95(该数据表示最小费用)

[问题分析]

看到这道题,许多人都马上判断出穷举是不可行的,因为数据都是以实数的形式给出的.但是,不用穷举,有什么方法是更好的呢 递推是另一条常见的思路,但是具体方法不甚明朗.

既然没有现成的思路可循,那么先分析一下问题不失为一个好办法.由于汽车是由始向终单向开的,我们最大的麻烦就是无法预知汽车以后对汽油的需求及油价变动;换句话说,前面所买的多余的油只有开到后面才会被发觉.

提出问题是解决的开始.为了着手解决遇到的困难,取得最优方案,那就必须做到两点,即只为用过的汽油付钱;并且只买最便宜的油.如果在以后的行程中发现先前的某些油是不必要的,或是买贵了,我们就会说:"还不如当初不买."由这一个想法,我们可以得到某种启示:设我们在每个站都买了足够多的油,然后在行程中逐步发现哪些油是不必要的,以此修改我们先前的购买,节省资金;进一步说,如果把在各个站加上的油标记为不同的类别,我们只要在用时用那些最便宜的油并为它们付钱,其余的油要么是太贵,要么是多余的,在最终的中会被排除.要注意的是,这里的便宜是对于某一段路程而言的,而不是全程.

[算法设计]由此,我们得到如下算法:从起点起(包括起点),每到一个站都把油箱加满(终点除外);每经过两站之间的距离,都按照从便宜到贵的顺序使用油箱中的油,并计算花费,因为这是在最优方案下不得不用的油;如果当前站的油价低于油箱中仍保存的油价,则说明以前的购买是不够明智的,其效果一定不如购买当前加油站的油,所以,明智的选择是用本站的油代替以前购买的高价油,留待以后使用,由于我们不是真的开车,也没有为备用的油付过钱,因而这样的反悔是可行的;当我们开到终点时,意味着路上的费用已经得到,此时剩余的油就没有用了,可以忽略.

数据结构用一个队列:存放由便宜到贵的各种油,一个头指针指向当前应当使用的油(最便宜的油),尾指针指向当前可能被替换的油(最贵的油).在一路用一路补充的过程中同步修改数据,求得最优方案.

注意:每到一站都要将油加满,以确保在有解的情况下能走完全程.并设出发前油箱里装满了比出发点贵的油,将出发点也看成一站,则程序循环执行换油,用油的操作,直到到达终点站为止.

本题的一个难点在于认识到油箱中油的可更换性,在这里,突破现实生活中的思维模式显得十分重要.

[程序清单]

program ex5_2(input,output);

const max=1000;

type recordtype=record price,content:real end;

var i,j,n,point,tail:longint;

content,change,distance2,money,use:real;

price,distance,consume:array[0..max] of real;

oil:array [0..max] of recordtype;

begin

write('Input DI,C,D2,P:'); readln(distance[0],content,distance2,price[0]);

write('Input N:'); readln(n); distance[n+1]:=distance[0];

for i:=1 to n do

begin

write('Input D[',i,'],','P[',i,']:');

readln(distance[i],price[i])

end;

distance[0]:=0;

for i:=n downto 0 do consume[i]:=(distance[i+1]-distance[i])/distance2;

for i:=0 to n do

if consume[i]>content then

begin writeln('No Solution'); halt end;

money:=0; tail:=1; change:=0;

oil[tail].price:=price[0]*2; oil[tail].content:=content;

for i:=0 to n do

begin

point:=tail;

while (point>=1) and (oil[point].price>=price[i]) do

begin

change:=change+oil[point].content;

point:=point-1

end;

tail:=point+1;

oil[tail].price:=price[i];

oil[tail].content:=change;

use:=consume[i]; point:=1;

while (use>1e-6) and (point=oil[point].content

then begin use:=use-oil[point].content;

money:=money+oil[point].content*oil[point].price;

point:=point+1 end

else begin oil[point].content:=oil[point].content-use;

money:=money+use*oil[point].price;

use:=0 end;

for j:=point to tail do oil[j-point+1]:=oil[j];

tail:=tail-point+1;

change:=consume[i]

end;

writeln(money:0:2)

end.

[例5-3] 分油问题:设有大小不等的3个无刻度的油桶,分别能够存满,X,Y,Z公升油(例如X=80,Y=50,Z=30).初始时,第一个油桶盛满油,第二,三个油桶为空.编程寻找一种最少步骤的分油方式,在某一个油桶上分出targ升油(例如targ=40).若找到解,则将分油方法打印出来;否则打印信息"UNABLE"等字样,表示问题无解.

[问题分析] 这是一个利用队列方法解决分油问题的程序.分油过程中,由于油桶上没有刻度,只能将油桶倒满或者倒空.三个油桶盛满油的总量始终等于开始时的第一个油桶盛满的油量.

[算法设计] 分油程序的算法主要是,每次判断当前油桶是不是可以倒出油,以及其他某个油桶是不是可以倒进油.如果满足以上条件,那么当前油桶的油或全部倒出,或将另一油桶倒满,针对两种不同的情况作不同的处理.

程序中使用一个队列Q,记录每次分油时各个油桶的盛油量和倾倒轨迹有关信息,队列中只记录互不相同的盛油状态(各个油桶的盛油量),如果程序列举出倒油过程的所有不同的盛油状态,经考察全部状态后,未能分出TARG升油的情况,就确定这个倒油问题无解.队列Q通过指针front和rear实现倒油过程的控制.

[程序清单]

program ex5_3(input,output);

const maxn=5000;

type stationtype=array[1..3] of integer;

elementtype=record

station:stationtype;

out,into:1..3;

father:integer

end;

queuetype=array [1..maxn] of elementtype;

var current,born:elementtype;

q:queuetype;

full,w,w1:stationtype;

i,j,k,remain,targ,front,rear:integer;

found:boolean;

procedure addQ(var Q:queuetype;var rear:integer; n:integer; x:elementtype);

begin

if rear=n

then begin writeln('Queue full!'); halt end

else begin rear:=rear+1; Q[rear]:=x end

end;

procedure deleteQ(var Q:queuetype;var front:integer;rear,n:integer;var x:elementtype);

begin

if front=rear

then begin writeln('Queue empty!'); halt end

else begin front:=front+1; x:=Q[front] end

end;

function dup(w:stationtype;rear:integer):boolean;

var i:integer;

begin

i:=1;

while (i<=rear) and ((w[1]q[i].station[1]) or

(w[2]q[i].station[2]) or (w[3]q[i].station[3])) do i:=i+1;

if i0 then

begin

print(q[k].father);

if k>1 then write(q[k].out, ' TO ',q[k].into,' ')

else write(' ':8);

for i:=1 to 3 do write(q[k].station[i]:5);

writeln

end

end;

begin {Main program}

writeln('1: ','2: ','3: ','targ');

readln(full[1],full[2],full[3],targ);

found:=false;

front:=0; rear:=1;

q[1].station[1]:=full[1];

q[1].station[2]:=0;

q[1].station[3]:=0;

q[1].father:=0;

while (front begin

deleteQ(q,front,rear,maxn,current);

w:=current.station;

for i:=1 to 3 do

for j:=1 to 3 do

if (ij) and (w[i]>0) and (w[j]remain

then begin w1[j]:=full[j]; w1[i]:=w[i]-remain end

else begin w1[i]:=0; w1[j]:=w[j]+w[i] end;

if not(dup(w1,rear)) then

begin

born.station:=w1;

born.out:=i;

born.into:=j;

born.father:=front;

addQ(q,rear,maxn,born);

for k:=1 to 3 do

if w1[k]=targ then found:=true

end

end

end;

if not(found)

then writeln('Unable!')

else print(rear)

end.