sets / app.py
OzoneAsai's picture
Update app.py
b56c552 verified
raw
history blame
2.21 kB
import streamlit as st
def main():
st.title("้›†ๅˆๆ“ไฝœใ‚ขใƒ—ใƒช")
# ใƒกใƒ‹ใƒฅใƒผใฎ้ธๆŠž
option = st.sidebar.selectbox("ๆฉŸ่ƒฝใ‚’้ธๆŠžใ—ใฆใใ ใ•ใ„", ["้›†ๅˆใฎๆ“ไฝœ", "่ฃœ้›†ๅˆใฎ่จˆ็ฎ—"])
if option == "้›†ๅˆใฎๆ“ไฝœ":
set_operations()
elif option == "่ฃœ้›†ๅˆใฎ่จˆ็ฎ—":
complement_operation()
def set_operations():
st.header("้›†ๅˆใฎๆ“ไฝœ")
# ใƒฆใƒผใ‚ถใƒผๅ…ฅๅŠ›
set1 = st.text_input("้›†ๅˆ1 (ใ‚ซใƒณใƒžๅŒบๅˆ‡ใ‚Šใง่ฆ็ด ใ‚’ๅ…ฅๅŠ›ใ—ใฆใใ ใ•ใ„)")
set2 = st.text_input("้›†ๅˆ2 (ใ‚ซใƒณใƒžๅŒบๅˆ‡ใ‚Šใง่ฆ็ด ใ‚’ๅ…ฅๅŠ›ใ—ใฆใใ ใ•ใ„)")
set3 = st.text_input("้›†ๅˆ3 (ใ‚ซใƒณใƒžๅŒบๅˆ‡ใ‚Šใง่ฆ็ด ใ‚’ๅ…ฅๅŠ›ใ—ใฆใใ ใ•ใ„)")
# ๅ…ฅๅŠ›ใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใ‚’้›†ๅˆใซๅค‰ๆ›
set1 = set(map(int, set1.split(',')))
set2 = set(map(int, set2.split(',')))
set3 = set(map(int, set3.split(',')))
# ้›†ๅˆใฎๆ“ไฝœ
st.subheader("้›†ๅˆใฎๆ“ไฝœ็ตๆžœ")
st.subheader("ๅ’Œ้›†ๅˆ")
union = set1.union(set2, set3)
st.write(union)
st.subheader("็ฉ้›†ๅˆ")
intersection = set1.intersection(set2, set3)
st.write(intersection)
st.subheader("ๅทฎ้›†ๅˆ")
difference = set1.difference(set2, set3)
st.write(difference)
st.subheader("ๅฏพ็งฐๅทฎ")
symmetric_difference = set1.symmetric_difference(set2, set3)
st.write(symmetric_difference)
def complement_operation():
st.header("่ฃœ้›†ๅˆใฎ่จˆ็ฎ—")
# ๅ…จไฝ“้›†ๅˆใฎๆŒ‡ๅฎš
universe = st.text_input("ๅ…จไฝ“้›†ๅˆ (ใ‚ซใƒณใƒžๅŒบๅˆ‡ใ‚Šใง่ฆ็ด ใ‚’ๅ…ฅๅŠ›ใ—ใฆใใ ใ•ใ„)")
# ๅ…ฅๅŠ›ใ•ใ‚ŒใŸๆ–‡ๅญ—ๅˆ—ใ‚’้›†ๅˆใซๅค‰ๆ›
universe_set = set(map(int, universe.split(',')))
# ใƒฆใƒผใ‚ถใƒผๅ…ฅๅŠ›
initial_value = st.number_input("ๅˆๆœŸๅ€ค", value=0)
step = st.number_input("ใ‚นใƒ†ใƒƒใƒ—", value=1)
num_steps = st.number_input("ๅ›žๆ•ฐ", value=5)
# ่ฃœ้›†ๅˆใฎ่จˆ็ฎ—
st.subheader("่ฃœ้›†ๅˆใฎ่จˆ็ฎ—็ตๆžœ")
for i in range(num_steps):
complement = universe_set.difference(range(initial_value, initial_value + step))
st.write(f"่ฃœ้›†ๅˆ({initial_value} - {initial_value + step - 1})", complement)
initial_value += step
if __name__ == "__main__":
main()