Flesch Reading Ease(模拟)
http://poj.org/problem?id=3371
终于遇到简单一点的模拟题了。不过本人真心没有耐心读题目。。。
它的大致意思就是给一段合法的文章,求出这段文章的单词数,句子数,音节数,按照题目给出的公式带入就出结果。
>因为输入是按空格作为字符串结束标志的,因此每输入一个字符串就是一个单词,
>句子结束的标志是 . ? : ; !五种,每输入一个字符串只须判断其最后一个字符是否是 . ? : ; !的一种,若是,句子数加1.
>对于音节数,单词长度<=3的为一个音节,
大于3的情况下,句子中有元音 a(A),e(E),i(I),o(O),u(U),y(Y)时音节数加1,但如果有连续的元音字母按1个算,如果单词以 -es 或 -ed 或 -e(不包括-le)结尾,不算一个音节。
1 #include<stdio.h> 2 #include<string.h> 3 #include<iostream> 4 #include<ctype.h> 5 using namespace std; 6 7 bool check_sentences(char ch) 8 { 9 if(ch == '.' || ch == '?' || ch == ':' || ch == ';' || ch == '!') 10 return true; 11 return false; 12 } 13 14 bool check_syllables(char ch) 15 { 16 if(ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u' || ch == 'y' 17 || ch == 'A' || ch == 'E' || ch == 'I' || ch == 'O' || ch == 'U' || ch == 'Y') 18 return true; 19 return false; 20 21 } 22 23 int main() 24 { 25 int sentences = 0;//句子数 26 int words = 0;//单词数 27 int syllables = 0;//音节数 28 int len,i; 29 char s[50]; 30 31 while(cin>>s) 32 { 33 len = strlen(s); 34 35 if(check_sentences(s[len-1])) 36 sentences++; 37 38 words++; 39 40 while(!isalpha(s[len-1])) 41 len--; 42 43 if(len <= 3) 44 syllables++;//单词长度<=3时,音节数加1 45 else 46 { 47 if(check_syllables(s[0])) syllables++; 48 49 for(i = 1; i < len; i++) 50 { 51 if(check_syllables(s[i]) && !check_syllables(s[i-1])) 52 syllables++; 53 } 54 //去除以 -es -ed -e(除-le)结尾的情况 55 if(!check_syllables(s[len-3]) && s[len-2] == 'e' && (s[len-1] == 's'|| s[len-1] == 'd')) 56 syllables--; 57 if(!check_syllables(s[len-2]) && s[len-1] == 'e' && s[len-2] != 'l') 58 syllables--; 59 } 60 } 61 double ans; 62 ans = 206.835-1.015*(words*1.0/sentences)-84.6*(syllables*1.0/words); 63 printf("%.2lf\n",ans); 64 return 0; 65 }
View Code
转载于:https://www.cnblogs.com/LK1994/p/3397679.html
Flesch Reading Ease(模拟)相关推荐
- 数学建模学习(55):Flesch Reading Ease阅读评价实现
文章目录 一.什么是Flesch Reading Ease? 二.解决问题(基本模型) 三.问题理清思路 3.1 模块安装 3.2 官方文档瞅瞅 3.2 单词数计算 3.3 计算句子长度 3.4 计算 ...
- Unity简单的ease模拟
Unity简单的ease模拟 using System.Collections; using System.Collections.Generic; using UnityEngine; //简单的e ...
- 如何进行网站的安全测试
(一).安全测试是什么? 所谓安全性测试(security testing)是有关验证应用程序的安全服务和识别潜在安全性缺陷的过程. 注意:安全性测试并不最终证明应用程序是安全的,而是用于验证所设立策 ...
- 31 个用来测试你网站各项性能的免费在线工具
你是否肯定你的网站完全兼容各大浏览器?是否知道多少秒可以打开你的网站? 是否可以自信地说你的网站根本就没有打不开的时候? 是否-- 虽然它看似不重要,但这些在一定程度上也对你的网站的访问量产生了影响 ...
- Trends, Limitations and Open Challenges inAutomatic Readability Assessment Research翻译
摘要 可读性评估是对给定文本的阅读难度进行评估的一项任务.虽然对可读性评估的计算方法的研究已经有20年的历史了,但是对这一研究的综合研究还没有太多的工作.本文是对当前可读性评估计算模型发展的简要综述. ...
- 24个Web前端人员不能错过的在线检测网站汇总
标签: Html检测 / css错误检测 / 代码规范 / seo工具 在用IE浏览网站时,发现下面显示"网页上有错误",虽然不影响浏览,但总归让人感觉不舒服,大概多数站长都遇到过 ...
- 网页html/js/css错误代码在线检测网站汇总
在用IE浏览网站时,发现下面显示"网页上有错误",虽然不影响浏览,但总归让人感觉不舒服,大概多数站长都遇到过.而如果你的代码基础不是很好的话也许根 本找不到办法去解决这个问题,以致 ...
- 站长工具之在线检测网页错误
网页代码测试工具 没有站长可以保证自己的网页代码完全正确没有任何错误,特别是是否符合W3C标准,你可以通过以下测试来检查网站代码是否正确,无论你是asp的还是php的都可以哟. 1 . http:// ...
- 转:在线检测网页错误工具
网页代码测试工具 没有站长可以保证自己的网页代码完全正确没有任何错误,特别是是否符合W3C标准,你可以通过以下测试来检查网站代码是否正确,无论你是asp的还是php的都可以哟. 1 . http:// ...
最新文章
- CellRanger单细胞基因表达分析基础流程
- 深度学习 Deep Learning with MATLAB(懒人版)
- 打破你的认知,数字除以 0 一定会崩溃吗?
- 分区表理论解析(上):SQL Server 2k52k8系列(一)
- Linux—系统文件和目录介绍
- java在进行修改时报400_java开发注册群组报错400
- BZOJ 1037 [ZJOI2008]生日聚会Party(单调DP)
- 计算机学院实验室安全管理办法,计算机学院实验室安全管理办法.pdf
- pcb板生产的工艺流程有哪些?
- 将CF卡移动磁盘标识改为本地磁盘标识的软件
- IP 库的那些事儿之 2013 - 2014 流水帐版
- 这些愚蠢的事 数据中心管理中要避免
- ffmpeg对ts流的解析
- 美大学推开源赞助计划 DIY机器人你也办得到
- 梯度下降算法原理 神经网络(Gradient Descent)
- 六足机器人的实现原理
- VISHAY(威世通)样片申请与经验
- 产品助理实习day2
- Python输出CSV乱码
- 苹果电脑python在哪打开_苹果电脑怎么打开控制面板
热门文章
- 请简述一下线程的sleep()方法和yield()方法的区别?
- 【webservice】spring整合webservice RS风格
- 职称计算机windows 7,2017职称计算机考试Windows训练题
- UOS系统下FFmpeg源码编译安装及注意事项
- 2020年最全最简单KMP算法讲解
- 还在为Linux入门发愁?
- 2.3.7 操作系统之管程和java中实现管程的机制
- thinkphp5(改变html中的变量、赋值和替换)
- 内部排序选择、冒泡、插入、希尔、快速、归并、堆排序原理概要和实现
- C/Cpp / 虚函数是否可以用 inline 修饰