1050. String Subtraction (20)

本文通过一个简单的文本处理示例对比了Python与C++的实现方式。Python使用内置函数快速完成任务,而C++则展示了更底层的字符串操作过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分析:很无奈,我想用python。实在是简单呀。

python:

s1 = raw_input()
s2 = raw_input()
for e in s2:
    if e in s1:
        s1 = s1.replace(e, '')
print s1
c++:
#include <iostream>
#include <string>
#include <map>
#include <vector>
#include <algorithm>
using namespace std;
  
int main() {  
    string s, st;
	getline(cin, s);
	getline(cin, st);
	for(int i = 0; i < s.length(); i++){
		for(int j = 0; j < st.length(); j++){
			if(s[i] == st[j]){
				s[i] = '-';
				break;
			}
		}
	}
	for(int i = 0; i < s.length(); i++){
		if(s[i] != '-') printf("%c", s[i]);
	}
	cout << endl;
    return 0;  
}  



在我给的代码基础上改只要改运算符显示这一块:package com.example.myapplication import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.widget.ArrayAdapter import android.widget.Spinner import android.widget.TextView import android.widget.Toast import com.google.android.material.button.MaterialButton import com.google.android.material.textfield.TextInputEditText class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // 初始化UI组件 val num1Input = findViewById<TextInputEditText>(R.id.editTextNumber1) val num2Input = findViewById<TextInputEditText>(R.id.editTextNumber2) val operatorSpinner = findViewById<Spinner>(R.id.spinnerOperator) val calculateBtn = findViewById<MaterialButton>(R.id.buttonCalculate) val resultText = findViewById<TextView>(R.id.textViewResult) // 配置Spinner适配器 val operators = resources.getStringArray(R.array.operators) val adapter = ArrayAdapter( this, android.R.layout.simple_spinner_item, operators ).apply { setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) } operatorSpinner.adapter = adapter operatorSpinner.setSelection(0) // 默认选中第一个运算符 calculateBtn.setOnClickListener { // 获取输入值 val num1Str = num1Input.text.toString() val num2Str = num2Input.text.toString() val operator = operatorSpinner.selectedItem.toString() // 验证输入 if (num1Str.isEmpty() || num2Str.isEmpty()) { Toast.makeText(this, R.string.error_empty, Toast.LENGTH_SHORT).show() return@setOnClickListener } val num1 = num1Str.toDoubleOrNull() val num2 = num2Str.toDoubleOrNull() if (num1 == null || num2 == null) { Toast.makeText(this, R.string.error_invalid, Toast.LENGTH_SHORT).show() return@setOnClickListener } // 执行计算 val result = when (operator) { "+" -> num1 + num2 "-" -> num1 - num2 "*" -> num1 * num2 "/" -> { if (num2 == 0.0) { Toast.makeText(this, R.string.error_divide_zero, Toast.LENGTH_SHORT).show() return@setOnClickListener } num1 / num2 } else -> 0.0 } // 显示结果(保留两位小数) resultText.text = "%.2f".format(result) } } } <!-- 运算符选择下拉菜单 --> <com.google.android.material.textfield.TextInputLayout android:id="@+id/textInputLayoutOperator" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginStart="16dp" android:layout_marginTop="16dp" android:layout_marginEnd="16dp" app:boxBackgroundMode="outline" app:boxCornerRadiusTopStart="12dp" app:boxCornerRadiusTopEnd="12dp" app:boxStrokeColor="@color/purple_200" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/textInputLayout2"> <com.google.android.material.textfield.MaterialAutoCompleteTextView android:id="@+id/spinnerOperator" android:layout_width="match_parent" android:layout_height="wrap_content" android:entries="@string/result_hint" android:inputType="none" android:padding="8dp" android:textSize="16sp" /> </com.google.android.material.textfield.TextInputLayout>
07-29
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值