AcWing 662:点的坐标 ← 结构体 or 三目运算符

news/2024/10/7 17:00:39 标签: 结构体, 三目运算符

【题目来源】
https://www.acwing.com/problem/content/664/

【题目描述】
给定两个保留一位小数的浮点数 X,Y,用来表示一个点的横纵坐标。
请你判断该点在坐标系中的位置。

【输入格式】
共一行,包含两个浮点数 X,Y,表示点的横纵坐标。

【输出格式】
如果点在第一象限,则输出 Q1,在第二象限,则输出 Q2,以此类推。
如果点在原点处,则输出 Origem。
否则,如果点在 x 坐标上,则输出 Eixo X,在 y 坐标上,则输出 Eixo Y。

【数据范围】
−10.0≤X,Y≤10.0

【输入样例1】
4.5 -2.2

【输出样例1】
Q4

【输入样例2】
0.0 0.0

【输出样例2】
Origem

【算法分析】
◆ 当点不是原点时,判断点在 X 轴的条件为 
p.y==0,判断点在 Y 轴的条件为 p.x==0

【算法代码一:结构体

#include <bits/stdc++.h>
using namespace std;

struct Point{
    float x;
    float y;
}p;

int main() {
    cin>>p.x>>p.y;
    if(p.x==0 && p.y==0) cout<<"Origem"<<endl;
    else if(p.y==0) cout<<"Eixo X"<<endl;
    else if(p.x==0) cout<<"Eixo Y"<<endl;
    else if(p.x>0 && p.y>0) cout<<"Q1"<<endl;
    else if(p.x<0 && p.y>0) cout<<"Q2"<<endl;
    else if(p.x<0 && p.y<0) cout<<"Q3"<<endl;
    else if(p.x>0 && p.y<0) cout<<"Q4"<<endl;
        
    return 0;
}

/*
in:
0.0 -1.7

out:
Eixo Y
*/

【算法代码二:三目运算符

#include <bits/stdc++.h>
using namespace std;

int main() {
    float x,y;
    cin>>x>>y;

    if(x==0 && y==0) cout<<"Origem";
    else if(x*y==0) cout<<(x==0?"Eixo Y":"Eixo X");
    else if(x>0) cout<<(y>0?"Q1":"Q4");
    else cout<<(y>0?"Q2":"Q3");
}

/*
in:
0.0 -1.7

out:
Eixo Y
*/




【参考文献】
https://www.acwing.com/solution/content/254897/
https://www.acwing.com/solution/content/12396/


 


http://www.niftyadmin.cn/n/5693091.html

相关文章

k8s 中存储之 NFS 卷

目录 1 NFS 卷的介绍 2 NFS 卷的实践操作 2.1 部署一台 NFS 共享主机 2.2 在所有k8s节点中安装nfs-utils 2.3 部署nfs卷 2.3.1 生成 pod 清单文件 2.3.2 修改 pod 清单文件增加 实现 NFS卷 挂载的 参数 2.3.3 声明签单文件并查看是否创建成功 2.3.4 在 NFS 服务器 创建默认发布…

esp32-camera入门(基于ESP-IDF)

主要参考资料&#xff1a; ESP32-S2 Kaluga camera lcd 示例入门: https://blog.csdn.net/Marchtwentytwo/article/details/121121028 摄像头应用方案常见问题汇总: https://docs.espressif.com/projects/esp-faq/zh_CN/latest/application-solution/camera-application.html …

【Linux-基础IO】磁盘的存储管理详解

磁盘的存储管理 由于一个磁盘中包含了大量的扇区&#xff0c;为了方便管理&#xff0c;我们对磁盘进行了分区&#xff0c;其中每个分区又进一步划分为多个块组&#xff08;Block Group&#xff09;&#xff0c;每个块组中包含该块组的数据存储情况以及具体的数据 假设有一个8…

MobX-Miniprogram:微信小程序的状态管理利器

MobX-Miniprogram&#xff1a;微信小程序的状态管理利器 在开发微信小程序时&#xff0c;随着应用复杂度的提升&#xff0c;状态管理成为了一个不可忽视的问题。传统的通过全局变量或wx.setStorageSync/wx.getStorageSync进行状态管理的方式&#xff0c;不仅代码可读性差&…

进程间通信——《匿名管道》

文章目录 前言&#xff1a;进程间通信介绍进程间通信目的进程之间如何通信&#xff1f;进程间通信分类 管道什么是管道&#xff1f;匿名管道&#x1f9e8;尝试使用&#xff1a;&#x1f357;处理细节问题&#xff1a; &#x1f680;管道的4种情况和5种特征&#xff1a;4种情况&…

家庭用超声波清洗机好用吗?推荐四款性能绝佳的超声波清洗机!

在现代社会快节奏的日常中&#xff0c;高效清洁辅助工具成为了众多家庭的追求热点。超声波清洗机&#xff0c;作为集高效与便捷于一体的新兴清洗神器&#xff0c;正逐渐成为大众宠儿。但面对琳琅满目的市场选择&#xff0c;不同的型号搭载多样化的功能设定及波动的价格区间&…

【ECMAScript 从入门到进阶教程】第四部分:项目实践(项目结构与管理,单元测试,最佳实践与开发规范,附录)

第四部分&#xff1a;项目实践 第十四章 项目结构与管理 在构建现代 Web 应用程序时&#xff0c;良好的项目结构和管理是确保代码可维护性、高效开发和部署成功的关键因素。这一章将深入讨论项目初始化与配置&#xff0c;以及如何使用构建工具来简化和优化项目建设过程。 14…

前缀和算法详解

对于查询区间和的问题&#xff0c;可以预处理出来一个前缀和数组 dp&#xff0c;数组中存储的是从下标 0 的位置到当前位置的区间和&#xff0c;这样只需要通过前缀和数组就可以快速的求出指定区间的和了&#xff0c;例如求 l ~ r 区间的和&#xff0c;就可以之间使用 dp[l - 1…