|
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() |
|
|