【英语语法疑难点】An estimated后接个名词复数是个什么用法?

有个语法点不清楚,做错了题目,听了旋元佑老师的讲解才明白。结果一查发现网上有两个这样的问题没有解决。我就想来说一下。

台湾大学研究所入学试题有这么一道:

______  four hundred thousand Salvadorans entered the United States illegally between 1912 and 191 7.

A. An estimate
B. An estimated
C. An estimation
D. An estimation of
 

答案是B,我错选了D。D的语法是对的,但是意思不对,因为“估算”不是人,不能入境。

B的解释就是,这个用法叫做【名词片语内的名词片语】。即名词前面有数字的话就当作一个名词片语,前面可以加限定符和形容词。用表格解释一下大的名词片语的内部结构:

Determiner 限定词

Adjective 形容词 Noun(名词片语当名词)
an estimated four hundred thousand Salvadorans
a mere 20 soldiers
another   30 days

再贴两个旋老师的例子:

1.The meeting dragged on for a tiresome three hours.
2.The diver he

在C语言中,蒙特卡洛方法是一种基于统计概率的数值积分技术,用于估计数学常数π。以下是使用蒙特卡罗方法估算π的一个简单步骤: 1. **设置场景**:创建一个正方形区域(边长为2),并在这其中随机生成大量的(比如成千上万个)。 2. **投掷**:对于每一个生成的,检查它是否位于半径为1的单位圆内。你可以通过比较到原的距离(该距离小于等于1)来进行判断。 3. **计数**:记录落在圆内的的数量(记作`circle_points`)以及总共生成的数(记作`total_points`)。 4. **理论依据**:因为圆的面积是π * r²,而正方形的面积是边长的平方,所以圆内的的比例近于π/4。可以近似地计算π = 4 * circle_points / total_points。 5. **重复实验**:为了提高精度,多次运行这个过程并取平均值作为π的估计值。 6. **编写代码**:将上述步骤转化为实际的C程序,包括随机数生成、坐标比较和结果累加等部分。 以下是简化的C代码示例(使用`<stdlib.h>`库的`srand`和`rand`函数): ```c #include <stdio.h> #include <stdlib.h> int is_in_circle(float x, float y) { return (x*x + y*y <= 1); } float estimate_pi(int num_trials) { srand(time(0)); // 初始化随机数种子 int circle_points = 0; for (int i = 0; i < num_trials; ++i) { float x = (float)rand() / RAND_MAX; float y = (float)rand() / RAND_MAX; if (is_in_circle(x, y)) { circle_points++; } } return 4.0f * (float)circle_points / num_trials; } int main() { int trials = 1000000; // 可以增大此数值以提高精度 float pi_estimate = estimate_pi(trials); printf("Estimated value of Pi: %.6f\n", pi_estimate); return 0; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值