একজন গণিতজ্ঞের কাছে প্রোগ্রামিং পরিচয় করিয়ে দেওয়া [বন্ধ]


30

আমি বর্তমানে একজন প্রোগ্রামার, আমি প্রায় 16 বছর বয়সী এবং আমার ক্যারিয়ারকে কম্পিউটার সায়েন্স ডিগ্রি বা ইলেকট্রিক্যাল ইঞ্জিনিয়ারিং ডিগ্রি সম্পর্কিত কোনও কিছুতে সংকীর্ণ করেছি (আমি জানি তারা বেশ আলাদা তবে এই প্রশ্নটি আমার বন্ধু সম্পর্কে) তবে আমার বন্ধু তাই নিশ্চিত নয়।

তিনি খুব গণিতশাস্ত্র আগ্রহী এবং তা খুবই ভালো এবং আমি মনে করি সে প্রোগ্রামিং উপভোগ করবে কিন্তু সে (এটা চেষ্টা করতে ইচ্ছুক নয় সম্পাদন করা তিনি হয় চেষ্টা করতে ইচ্ছুক কিন্তু আগে কখনও করেছে)। গণিতের সমস্যাগুলি সমাধান করতে বা কোনও ধরণের গণিতকে জড়িত করার জন্য যে কোনও ব্যক্তি আমাকে এমন কোনও ভাষা বা সরঞ্জামের জন্য পরামর্শ দিতে পারেন যা তিনি প্রোগ্রামিংয়ে (যুক্তিসঙ্গত প্রাথমিক স্তরে আমি ধরে নিই) ছিটকে যেতে পারি।

যেমনটি আমি বলি যে তিনি গণিতকে অনেক উপভোগ করেন তবে আমি মনে করি তিনি প্রোগ্রামিং উপভোগ করবেন, সমস্যাটি হ'ল আমি চাই না যে তাকে এমন জিনিস দিয়ে সরিয়ে দেওয়া হোক যা মেমরি বরাদ্দকরণ এবং আল হিসাবে পরিচিতির স্তরে প্রাসঙ্গিক নয়। আমি জানি এটি অত্যন্ত গুরুত্বপূর্ণ তবে মূল বিষয়টি হ'ল আমি চাই তিনি গণিতের সাথে কিছুটা প্রোগ্রামিং শিখুন আশা করি যদি তিনি যথেষ্ট আগ্রহী হন তবে তিনি প্রোগ্রামিং হিসাবে প্রোগ্রামিং শিখতে পারেন।

সম্পাদনা করুন: এটি এমন নয় যে তিনি সম্পূর্ণ অনিচ্ছুক - আরও বেশি যে তিনি এর আগে সক্রিয়ভাবে এই অঞ্চলটি ঘুরে দেখেননি, কারণ সম্ভবত তিনি এ সম্পর্কে অবহিত নন। আমি তাকে এমন কিছু করতে বাধ্য করতে চাই না যা সে চায় না, আমি এটিকে আরও কিছুটা ধাক্কা হিসাবে দেখি যাতে সে প্রোগ্রামিং সম্পর্কে শিখতে পারে। যদি তিনি এটি পছন্দ করেন না - যথেষ্ট ন্যায্য, আমি এটি নিয়ন্ত্রণ করতে পারি না এবং চাই না তবে যদি সে এটি উপভোগ করতে দেখা যায় - তবে এই ধাক্কাটি সঠিক জিনিস হবে।


17
আপনি কেন আপনার বন্ধুকে এমন কোনও দিকে চালিত করতে চান যেখানে তিনি আগ্রহী নন?
এইচএলজিইএম

3
রেকর্ডের জন্য, আমি যে প্রোগ্রামারগুলির সাথে কাজ করেছি তাদের মধ্যে গণিত ডিগ্রি রয়েছে। তার উপরে, তারা বেশ ভাল।
অ্যাংরিবার্ড

1
আমি @ এইচএলজিইএম এর সাথে একমত যদি কেউ আমাকে খাঁটি, তাত্ত্বিক গণিতের দিকে ঠেলে দেয় তবে আমি এটিকে ঘৃণা করব। তেমনি, যারা এই জিনিসটি পছন্দ করে তারা এটাকে ঘৃণা করবে যদি তারা বোরিং প্রয়োগ করা জিনিসগুলির দিকে ঠেলাঠেলি করে।
কাজ

4
কিছু বিষয়ে দৃষ্টিভঙ্গি রাখার জন্য - আপনি 16 বছর বয়সী। আপনি কোনও প্রোগ্রামার নন, আপনি এমন কিছু শিক্ষার্থী আছেন যা কিছু প্রোগ্রামিং করেছেন done আপনার বন্ধু কোনও গণিতবিদ নন, তিনি এমন একজন শিক্ষার্থী যিনি গণিত পছন্দ করেন (এবং কিছু শিখেছিলেন)। আমি @ পার্ল.জে.-এর উত্তরটি পছন্দ করার পরেও আমি মনে করি আপনি সম্ভবত এটির চেয়ে বেশি পৌঁছে গেছেন।
জোয়েল ইথারটন

2
@ পেরেল.জে: যতক্ষণ না কারও কাছে প্রয়োজনীয় অধ্যয়ন "পড়াশোনার প্রাথমিক অঞ্চল" প্রমাণ হিসাবে দেখাতে হবে যে তিনি গণিতবিদ নন। এমনকি বিশ্ববিদ্যালয়ে এমন কেউ, যার গণিত বড়, তিনি এখনও গণিতবিদ নন।
জোয়েল ইথারটন

উত্তর:


60

গণিত লোগো

আপনি যদি "গণিতের মতো" ভাষা চান তবে হাস্কেল আপনার সেরা বন্ধু (আপনার সেরা বন্ধুর জন্য)। ঝামেলা ছাড়াই আপনি সহজেই নতুন ফাংশন তৈরি করতে পারেন। এটি আপনার পক্ষে বন্ধুর জন্য আমি দিতে পারি সেরা ভাষার প্রস্তাবনা। এখানে কয়েকটি লিঙ্ক রয়েছে:

ম্যাথামেটিকাল

ওল্ফ্রামের ম্যাথামেটিকায় তাঁর আগ্রহ থাকতে পারে।

Mathematica is a computational software program used in scientific, engineering, and mathematical fields and other areas of technical computing. It was conceived by Stephen Wolfram and is developed by Wolfram Research of Champaign, Illinois.

যদিও এটি ব্যয়বহুল, এটি মূল্যবান। এখানে কয়েকটি লিঙ্ক রয়েছে:

আলগোরিদিম

যে কোনও প্রোগ্রামের জন্য অ্যালগরিদমগুলি গুরুত্বপূর্ণ, তবে আপনার বন্ধুটি যখন কোনও ভাষার সাথে স্বাচ্ছন্দ্য বোধ করেন তখন এগুলি দিয়ে শুরু করা উচিত। এখানে আরও কয়েকটি লিঙ্ক রয়েছে:

আশাকরি এটা সাহায্য করবে! আপনার যদি কোন প্রশ্ন বা মতামত থাকে তবে নির্দ্বিধায় মন্তব্য করুন! যাইহোক, এই লিঙ্কগুলির সমস্তগুলি নিখরচায় সংস্থানগুলি। আপনি যদি একটি মুদ্রিত বই চান, আমার কয়েকটি সুপারিশ আছে, কেবল একটি মন্তব্য দিন!



2
আমি একজন গণিতের মেজর, এবং আমি গণিতের দিক থেকে হাস্কেলকে দুর্দান্ত হিসাবে সুপারিশ করতে পারি। বেশিরভাগ ভাষার চেয়ে অনেক বেশি তাত্ত্বিক বিষয়গুলি পড়তেও আমি পছন্দ করি।
থিও বেলার

2
যদি তিনি হাস্কেলকে শিখেন তবে পরে তিনি প্রমাণের জন্য উপযুক্ত একটি নির্ভরশীল-টাইপযুক্ত ভাষা আগদায়ও যেতে পারেন
পিটার সি

4
@ এসকে-যুক্তি আপনি কীভাবে এটি বলতে পারেন? গণিত নতুন লজিক্যাল সিস্টেমগুলি শেখার এবং সেগুলি সম্পর্কে যুক্তি সম্পর্কে সমস্ত কিছু (ভুলে যাবেন না যে গণিতবিদরা টুরিং মেশিনটি আবিষ্কার করেছিলেন)। আপনি সত্যই ভাবেন যে যে কেউ গণিত পরিচালনা করতে পারবেন তিনি পরিবর্তনশীল রূপান্তরটির ধারণাটি পরিচালনা করতে পারবেন না? এবং আমার বক্তব্যটি হ্যাসকেলে ভেরিয়েবল মিউটেশনের মতো সাধারণ কিছু করার জন্য একটি স্টোর মোনাডের প্রয়োজন! এর চেয়ে সহজ কথা বলা x = x + 1হাস্যকর।
জেরেমিকুন

2
@ বিয়ান, এটি একটি কার্যনির্বাহী বিবৃতি সম্পর্কে আসলে আমার নিজের প্রথম প্রতিক্রিয়া ছিল (এবং আমি তখন থেকে গণিতের আদিম লিনিয়ার সমীকরণ ছাড়া কিছুই জানতাম না)। তার পর থেকে বারবার একই প্রতিক্রিয়া দেখেছি। আমি ইচ্ছাকৃতভাবে পূর্ববর্তী প্রোগ্রামিংয়ের অভিজ্ঞতা নেই তাদের কাছে ক্রিয়ামূলক প্রোগ্রামিং ধারণাগুলি প্রবর্তনের চেষ্টা করেছি, ধীরে ধীরে অপরিহার্য জিনিসগুলির দিকে চলে যাচ্ছি। এটি সর্বদা সহজ ছিল এবং সব "WTF?!?" দেখতে সবসময় কেবল আবশ্যক এবং ওওপি ধারণাগুলির পরিচিতি দিয়ে শুরু হয়।
এসকে-যুক্তি

18

এমএল পরিবারে বা হ্যাস্কেলের কার্যকরী প্রোগ্রামিং এবং ভাষাগুলি গণিতবিদদের মনে যথেষ্ট ভাল ফিট করে।


খুবই সত্য! অসীম তালিকা এবং সমস্ত কিছু গণিত মনের জন্য দুর্দান্ত।

14

যদি তিনি গণিতে মেজর হন তবে তিনি অবশ্যই বেশ কিছুটা প্রোগ্রামিং শেষ করবেন, যদি সি ++ এর মতো নিম্ন স্তরের ভাষায় না হয় তবে উচ্চতর স্তরে, নির্দিষ্ট গণিতে, ম্যাপেল বা গণিতের মতো ভাষা তিনি কী করছেন তার উপর নির্ভর করে।

এছাড়াও, তার গবেষণার ক্ষেত্রের উপর নির্ভর করে তিনি প্রয়োগকৃত গণিত বা স্ট্যাটিকাল এনালাইসিস শেষ করতে পারেন, উভয়ের জন্যই যথেষ্ট পরিমাণে প্রোগ্রামিংয়ের প্রয়োজন হবে। তিনি যা সিদ্ধান্ত নেন তা বিবেচনা না করেই তিনি এখন প্রোগ্রামিংয়ের পক্ষে আরও ভাল অভ্যস্ত হন।


1
আপনি সেজে ( সেজেমাথ.অর্গ ) এর সাহায্যে পাইথনটিকে তার মনে ঝলক দেওয়ার চেষ্টা করতে পারেন ।
আন্তন বারকোভস্কি

এখানে আরও একটি উচ্চ-স্তরের, গণিত-নির্দিষ্ট ভাষা: math.uiuc.edu/Macaulay2
RyanTM

আমি আপনাকে কেবল তাকে প্রোগ্রামিং আবিষ্কার করার অনুমতি দেওয়ার পরামর্শ দিচ্ছি। যখন তিনি এটির সংস্পর্শে আসেন, এবং অবশ্যই তাকে এমন কিছু করতে হবে যার জন্য তার গাণিতিক নির্দিষ্ট ভাষায় কিছু করা প্রয়োজন, তিনি তা পছন্দ করবেন বা ঘৃণা করবেন। এটি যখন ঘটে যখন সে এটি পছন্দ করে তবে সে যে ভাষাগুলি তাকে সেরা স্যুট করে সেগুলি নির্বাচন করতে সক্ষম হবে। এটি এমন নয় যে আপনি আপনার বন্ধুকে সাহায্য না করা উচিত, যদি কোনও আগ্রহ না দেখানো হয় তবে আপনার এটি ফেলে দেওয়া উচিত।
রামহাউন্ড

12

তাকে হাস্কেল শিখিয়ে দিন। এটি এমন একটি ভাষা যেখানে আপনি গণিতে যেমন ভাবতে পারেন:

  • একটি ফাংশন এমন কিছু যা আউটপুটটিতে ইনপুট মানচিত্র করে
  • প্রয়োজনীয় হিসাবে স্টাফ মূল্যায়ন করা হয়
  • অনুমান এবং একটি ক্রেজি টাইপ সিস্টেম টাইপ করুন
  • সুবিধাজনক বাক্য গঠন
  • দুর্দান্ত সম্প্রদায় (উদাহরণস্বরূপ স্ট্যাকওভারফ্লো )
  • Monads

আমি আপনাকে তাকে http://learnyouahaskell.com দেখানোর পরামর্শ দিচ্ছি , হাস্কেলের অন্যতম সেরা টিউটোরিয়াল।


11

যেহেতু গণিত অধ্যয়ন করেছেন (আমার খাঁটি গণিতে বিএস আছে এবং সবেমাত্র ফলিত গণিত / পরিসংখ্যানের জন্য আমার এমএস পেয়েছি) এবং পরবর্তীকালে আমার ক্যারিয়ারের পাশাপাশি প্রোগ্রামিংয়ের মজা / ব্যবহারিকতা / গুরুত্ব বুঝতে পেরেছি, আমি সত্যিই এই প্রশ্নের প্রশংসা করি। আমি আশা করি 10 বছর আগে আপনার মতো আমার কোনও বন্ধু থাকলে আমাকে প্রোগ্রামিংয়ের দিকে ঠেলে দেয়।

আপনার উভয়েরই প্রকল্পের ইউলারের চেক আউট করা উচিত । এটা কি?

প্রজেক্ট ইউলার চ্যালেঞ্জিং গাণিতিক / কম্পিউটার প্রোগ্রামিং সমস্যার একটি সিরিজ যা সমাধান করার জন্য গাণিতিক অন্তর্দৃষ্টি ছাড়াও আরও বেশি প্রয়োজন। যদিও গণিত আপনাকে মার্জিত এবং দক্ষ পদ্ধতিতে আসতে সহায়তা করবে, বেশিরভাগ সমস্যা সমাধানের জন্য কম্পিউটার এবং প্রোগ্রামিং দক্ষতার প্রয়োজন হবে।

যদিও এটি কোনও ভাষা নির্দিষ্ট পরামর্শ নয়, তবে প্রোগ্রামিং শুরু করার জন্য এটি দুর্দান্ত প্রেরণাদায়ক হবে (বিশেষত যদি ইতিমধ্যে গণিতে আগ্রহ থাকে)। সমস্যাগুলি খুব সহজ এবং সহজলভ্য হয়ে শুরু হয় তবে খুব জটিল এবং / অথবা কঠিন হয়ে যায়। একটি ভাল চ্যালেঞ্জ এবং অনুপ্রেরণা যা আপনি উভয়ই উপভোগ করতে পারেন।

কোন ভাষাটি ব্যবহার করতে হবে সে সম্পর্কে আমার কাছে সি ++, আর, মতলব এবং ম্যাথমেটিকার অভিজ্ঞতা রয়েছে যা গণিত সম্প্রদায়ের মধ্যে দুর্দান্ত এবং ব্যাপকভাবে ব্যবহৃত হয়। তবে আরও বিশেষভাবে, আমি দৃ strongly়ভাবে পরামর্শ দিই পাইথন শেখার যা গণিতের পক্ষে খুব কার্যকর তবে এটি কারও কারও মতো গণিতের মধ্যে সীমাবদ্ধ নয় (যদি তিনি পরবর্তী জীবনে আরও বিকল্প চান তবে)। পাইথন দিয়ে শুরু করা সহজ তবে শেখার মতো অনেকগুলি জিনিস রয়েছে। এটি অন্য কারওর মতো নয়। সি ++ এছাড়াও ভাল পছন্দ হতে পারে তবে প্রথম থেকেই আরও বাধা থাকতে পারে।


প্রজেক্ট অলারের জন্য +২, আমি আপনার উত্তর না পাওয়া পর্যন্ত মূল প্রশ্নের উপর একটি মন্তব্য হিসাবে যুক্ত করতে যাচ্ছি। ওপি এবং তার বন্ধু অবশ্যই এই একসাথে getোকা উচিত।
কোবল্টডাক

10
  • গণিতবিদদের জন্য, সবচেয়ে বড় টার্ন অন হ'ল আলগোরিদিম। আপনার বন্ধুকে অবশ্যই পাইথন এগুলির প্রয়োগ করতে হবে (এটি বন্ধুত্বপূর্ণ)।

  • ম্যাটল্যাবের মতো সংখ্যাগত কম্পিউটিং পরিবেশগুলি ম্যাট্রিক্স ম্যানিপুলেশন, ফাংশন এবং ডেটার প্লট করা, অ্যালগরিদমের বাস্তবায়নের জন্য কার্যকর হবে।


10

এটি গণিতের ক্ষেত্রের উপর নির্ভর করে যা তিনি আগ্রহী।

যদি তিনি অ্যাবস্ট্রাক্ট বীজগণিত বা সংযুক্তিবিদ্যায় আরও বেশি থাকেন তবে তিনি সম্ভবত হাস্কেলকে পছন্দ করবেন কারণ জটিল টাইপ সিস্টেমটি বিভিন্ন গণিতের সরাসরি প্রোগ্রামিংয়ের অনুমতি দেয়। এটিএস একটি বিকল্পও হতে পারে।

আমি একটি ইন্ট্রো টিউটোরিয়াল এবং খাঁটি ফাংশনাল ডেটা স্ট্রাকচারের জন্য আপনাকে দুর্দান্ত কাজের জন্য একটি হাস্কেল শিখার সুপারিশ করব অ্যালগরিদমের জন্য জন্য ।

যদি তিনি ম্যাট্রিক্স বিশ্লেষণ, ডিফারেনশিয়াল সমীকরণ বা গতিশীলতার নিয়ম আরও বেশি, আমি বলতে চাই মতলব , NumPy , অথবা অক্টেভ । এপিএল ডায়ালগের মাধ্যমেও আগ্রহী হতে পারে; যদিও আমি তাকে শুরু করতাম না। সংখ্যার রেসিপি সি -+ এ থাকা অবস্থায় অ্যালগরিদমের একটি ভাল গাইড হিসাবে পরিবেশন করার জন্য অভিযোজিত হতে পারে।

তিনি যদি স্ট্যাটিস্টিকস করতে চান তবে আর প্রাকৃতিক পছন্দ।


5

আমি গণিতে স্নাতক ছাত্র, এবং কম্পিউটার বিজ্ঞানে আমার স্নাতকোত্তর করেছি। আমি ম্যাথ ∩ প্রোগ্রামিং নামে একটি ব্লগ রাখি রেখেছি যেখানে আমি গণিতের অ্যাপ্লিকেশনগুলিকে প্রোগ্রামিংয়ের (এবং বিপরীতে) অন্বেষণ করি এবং আমাকে স্বীকার করতে হবে যে আমি কম্পিউটার বিজ্ঞানের বেশিরভাগ কম গাণিতিক দিকগুলি শুকনো এবং অপ্রস্তুত পেয়েছি (মূলত, আমার বিরোধী আমার হাসিখুশি হ্যাকগুলির সমস্তগুলি যা আমার অভিজ্ঞতার ক্ষেত্রে সিস্টেম প্রোগ্রামিংয়ে যায়)।

অন্যদিকে, আমার ব্লগে আমি মুখের স্বীকৃতি (লিনিয়ার বীজগণিতের বেশ কিছুটা), এনক্রিপশন পদ্ধতি, টুরিং মেশিন এবং সেলুলার অটোমেটা, সিরিয়াল কিলার কার্যকলাপের পূর্বাভাসের মডেল, অনুসন্ধান ইঞ্জিন এবং অন্যান্য গাণিতিক ধারণাগুলির মতো সমস্যার দিকে নজর দিচ্ছি problems । সর্বোত্তম অংশটি হ'ল আমি ধারণাগুলি বাস্তবায়িত করতে এবং আমার নিজস্ব কোনও!

আপনার বন্ধুটিকে আমাদের মতো অন্যান্যদের মতো প্রোগ্রামিং পছন্দ করতে, তাকে সত্যই আকর্ষণীয় মনে করুনপ্রকল্পের। প্রোগ্রামিংয়ের দিকটি তিনি যে পণ্যটিকে সুন্দর দেখেন তার দিকে কাজ না করেই চলবে না। ভাষা হিসাবে, আমি ম্যাথমেটিকা, র‌্যাকেট (খুব বন্ধুত্বপূর্ণ, তবে এখনও শক্তিশালী স্কিম ডেরাইভেটিভ), পাইথন এবং হাস্কেলকে প্রস্তাব দিই। গাণিতিক সম্ভবত সেরা, কারণ তিনি নির্বাচিতভাবে নিজের গাণিতিক ফাংশনগুলি প্রয়োগ করতে পারেন এবং ম্যাথমেটিকাকে গ্রন্থাগারগুলিতে নির্মিত প্রকল্পটি শেষ করতে ব্যবহার করতে পারেন (উদাহরণস্বরূপ, এমন একটি ফাংশন লিখুন যা ফুরিয়ার সহগকে গণনা করে এবং তারপরে বিশ্লেষণের বাকি অংশগুলি করার জন্য ম্যাথমেটিকাকে ব্যবহার করে, যেমন ফিল্টারিং, চিত্র উত্পন্নকরণ ইত্যাদি)। এমনকি ইন্টিগ্রেশনের মতো প্রাথমিক বিষয়গুলি কিছু আকর্ষণীয় প্রকল্প দেয় (বিভিন্ন চতুর্ভুজ বিধি, মন্টে কার্লো ইন্টিগ্রেশন, বড় ডেটা সেটগুলির সাথে মেশিন লার্নিংয়ে মৃদু রূপান্তর)।

এছাড়াও, দেখে মনে হচ্ছে এখানে প্রচুর প্রতিক্রিয়াগুলি এমন লোকদের কাছ থেকে যারা গণিত করেন না, বা যারা গাণিতিক সফ্টওয়্যারটি করার পরামর্শ দিচ্ছেন তাদের ভাষা ব্যবহার করেন নি। লোকেরা হাস্কেলের প্রস্তাব দেওয়ার কারণ হ'ল এটি যতটা সম্ভব বিভাগের তত্ত্বের আক্ষরিক বাস্তবায়নের খুব কাছাকাছি এবং কিছু মৌলিক ধারণার গাণিতিক সংজ্ঞাগুলির সাথে ভাল মানায়। তবে যদি আপনার বন্ধুটি আপনার বয়সের কাছাকাছি থাকে, তবে তিনি গাণিতিকভাবে বিভাগের তত্ত্বের জন্য প্রস্তুত নন (যে পরিপক্কতা স্নাতক স্কুল অবধি কমবেশি অকেজো, এবং নিজেকে শেখানো শক্ত নয়), এবং প্রথম ভাষা হিসাবে হাস্কেলের স্টিপস্টেস্ট রয়েছেপ্রস্তাবিত ভাষাগুলির শিখার বক্ররেখা (সম্ভবত প্রোলগ স্টিপার)। আমি জাভাস্ক্রিপ্ট সংকলক বাস্তবায়নের জন্য হাস্কেল ব্যবহার করেছি, এবং আমি কোডটির একটি খুব সুন্দর মার্জিত টুকরা দিয়ে শেষ করেছি, তবে পরিবর্তনশীল মিউটেশনের মতো স্বজ্ঞাত জিনিসগুলির জন্য আপনাকে ইতিমধ্যে অনিয়ন্ত্রিত মনডগুলিতে ছোঁড়াতে হবে।

পাইথন এবং ম্যাথমেটিকাগুলি অনেক বেশি বন্ধুত্বপূর্ণ হবে, এবং ম্যাথামেটিকায় অল্প অল্প শিখার বক্ররেখা রয়েছে কারণ সমস্ত লাইব্রেরিগুলি দুর্দান্ত ওয়েব-ইন্টারফেসে দারুণভাবে ডকুমেন্টেশন সহ প্যাকেজ করা হয়েছে (কেবল F1 চাপুন!) অন্যদিকে, আমি শুনেছি এমন একটি বই রয়েছে (তবে পড়েনি) যা উন্নত গণিতে রূপান্তর এবং একই সাথে হাস্কেলের পরিচয় উভয়ই সরবরাহ করে । এটি ইতিবাচক অ্যামাজন পর্যালোচনা বলে মনে হচ্ছে, তাই আপনি এটি পরীক্ষা করে দেখতে চাইতে পারেন। তিনি যদি কখনও শিল্পের জিনিসগুলি করতে চান তবে তিনি সি # এবং জাভা-র মতো ভাষাগুলিতে যেতে পারেন, তবে সম্ভবত তাকে কখনই সেই জঙ্গলে প্রবেশ করতে হবে না (এবং প্রচুর শিল্পের গণিতের জিনিস খাঁটি মতলব যাইহোক) pure

তবে আমি যেমনটি বলেছি, সঠিক প্রকল্পের সাথে ভাষা শেখা একটি আনন্দ হয়ে ওঠে, প্রকল্প যাই হোক না কেন।


3

যদি আপনার বন্ধু আনুষ্ঠানিক যুক্তি উপভোগ করে এবং কৃত্রিম বুদ্ধিমত্তাকে আকর্ষণীয় মনে করে তবে তিনি প্রোলোগের দিকে নজর দিতে পছন্দ করতে পারেন ।

এই ভাষার সাহায্যে আপনি আপনার পূর্বাভাস (প্রাথমিক অনুমান, "তথ্য") এবং অনুমানের নিয়ম ("সম্পর্ক") লিখেছেন এবং তারপরে প্রশ্ন জিজ্ঞাসা করুন।

প্রোলোগ তখন চলে যায় এবং কেবলমাত্র প্রদত্ত তথ্য এবং সম্পর্কগুলি ব্যবহার করে প্রশ্নের উত্তর দেওয়া যায় কিনা এবং যদি তা হয় তবে আপনাকে উত্তরটি বলে।

সুতরাং আপনি এটি বলছেন যে "টম একটি বিড়াল" এবং "সমস্ত বিড়ালই প্রাণী" এবং জিজ্ঞাসা করেন "টম কি একটি প্রাণী?" এবং আপনি উত্তরটি "সত্য" পাবেন।

অথবা আপনি এটি "আপনার সম্পর্কে সমস্ত প্রাণীকে তালিকাবদ্ধ করতে" জিজ্ঞাসা করতে পারেন এবং আপনি একক আইটেমের তালিকা "টম" পাবেন।

অবশ্যই সিনট্যাক্স এর চেয়ে কিছুটা জটিল, তবে আপনি সাধারণ ধারণাটি পেয়ে যান।


প্রোলোগ হতাশাজনকভাবে প্রথম-আদেশের যুক্তির নিকটে, তবে সত্যই বেমানান, কারণ "অপ্রমাণিত" এবং "মিথ্যা" পার্থক্য করার কোনও উপায় নেই। এটি কিছু উপায়ে একটি ঝরঝরে ভাষা, তবে আমি এটিকে কোনও গণিতজ্ঞের উপর চাপ দেব না এবং এটিকে প্রোগ্রামিং যুক্তি বলব না।
ডেভিড থর্নলি

আপনি কি কেবল উপেক্ষার পরীক্ষা করতে পারবেন না?
বিল মিশেল 16'12

2

আপনার বন্ধুটিকে চেষ্টা করার জন্য উত্সাহিত করার সর্বোত্তম উপায় হ'ল তিনি প্রোগ্রামিং করছেন এই বিষয়টি নিয়ে খুব বেশি চিন্তা না করে তাকে প্রোগ্রামিং শুরু করা have

একবার তিনি "প্রোগ্রামিং" এর সাথে আরও ডিল করার জন্য প্রস্তুত হয়ে গেলে আপনি উভয়ই একই বই দিয়ে শুরু করতে পারেন এবং আরও গাণিতিক ভিত্তি থেকে প্রোগ্রামিং শিখতে পারেন। আমার বর্তমান দুটি প্রিয় বই হ'ল:

এমআইটি প্রেস ওয়েব সাইটে এসআইসিপি নিখরচায় দেখা যায় ।

যদি আপনার বন্ধুটি গাণিতিকভাবে ঝোঁক থাকে তবে লিস্প কোনও অসুবিধা উপস্থিত করবে না এবং এটি আপনাকে কোনও বিশেষ বাক্য গঠন শিখতে মুক্তি দেয়। আমার মনে হয় হাস্পেলের চেয়ে লিস্প শেখা সহজ is


1

আমি হাস্কেলের সাথে একমত, তবে ব্যবহারিক দৃষ্টিকোণ থেকে তারও বহুল ব্যবহৃত ব্যবহৃত বিমূর্ত মেশিনে একটি ভাষা শেখা উচিত। আমি একটি জেভিএম ভাষা বা অবশ্যই নেট নেট ভাষা বলতে চাই।

এই প্ল্যাটফর্মগুলিতে এমন ভাষা রয়েছে যা পতাকাগুলির চেয়ে কিছুটা আকর্ষণীয় interesting জেভিএম-এ ক্লোজুরে এবং স্কালায় এক নজর দেখুন। .NET প্ল্যাটফর্মের এফ # তে একবার দেখুন।

মাইক্রোসফ্ট রিসার্চ থেকে সি-ওমেগা নামে একটি নেট নেট ভাষা ছিল যা খুব আকর্ষণীয় ছিল, তবে এটি কেবল একটি গবেষণা প্রকল্প ছিল।


1

মতলব সাধারণত গাণিতিক এবং বৈজ্ঞানিক প্রোগ্রামিংয়ের জন্য ব্যবহৃত হয়। এটি একটি স্ক্রিপ্ট ভিত্তিক ভাষা, শেখা কঠিন নয় এবং মেমরির সমস্ত সমস্যা ব্যবহারকারী থেকে লুকানো থাকে।

সফটওয়্যার ইঞ্জিনিয়ারিং এবং বৈদ্যুতিক প্রকৌশল কম্পিউটার ইঞ্জিনিয়ারিংয়ে একত্রিত হতে পারে can


0

যদি আপনার বন্ধু প্রোগ্রামিংটি চেষ্টা করতে রাজি না হয় তবে আপনি কেন বিষয়টি জোর করতে চান তা আমি দেখতে পাচ্ছি না। আমি মনে করি প্রোগ্রামার হওয়ার মূল চাবিকাঠি শিখতে আগ্রহী, এবং যদি তিনি শিখতে ইচ্ছুক না হন তবে প্রোগ্রামিং সম্ভবত তাঁর পক্ষে নয়

তবে এটি বলা হচ্ছে, আপনার সেরা বাজি হতে পারে নিজে একটি ছোট প্রোগ্রাম তৈরি করা এবং তাকে এটিকে প্রদর্শন করা। সম্ভবত এর কিছু অংশ অসম্পূর্ণ রেখে দিন এবং দেখুন যে আপনি এটির কাজ শেষ করতে সহায়তা করতে আগ্রহী হতে পারেন কিনা। আমি আমার জন্য জানি, একটি প্রোগ্রামের পিছনে অ্যালগরিদম এবং যুক্তি অনেকটা আকর্ষণীয় তারপর সিনট্যাক্সটি লিখেছেন, তাই সম্ভবত চেষ্টা করে দেখুন এবং আপনাকে প্রোগ্রামটির যুক্তি দিয়ে সহায়তা করুন এবং তারপরে আপনি গিয়ে জিনিসটি কোড করুন এবং তাকে দেখতে দিন এর ফলাফল।

যদি তিনি উত্স কোডটিতে কোনও আগ্রহ দেখায় তবে তার নিজের জিনিসপত্র কীভাবে লিখবেন তা তাকে দেখান। ব্যক্তিগতভাবে আমি মনে করি যতক্ষণ না ভাষা শেখা সহজ এবং প্রচুর ডকুমেন্টেশন রয়েছে ততক্ষণ ভাষা নিজেই গুরুত্ব দেয় না।


0

পাইথনের আশেপাশে একটি সম্পূর্ণ নিখরচায় গাণিতিক গ্রন্থাগার এবং সম্প্রদায় রয়েছে। আমি "সেজ" দিয়ে শুরু করব, তিনি এটি ব্যবহার করে সত্যই উপভোগ করা উচিত এবং ঘটনাচক্রে পাইথনে প্রোগ্রামিং শিখবেন।


0

আমি মনে করি আপনার বন্ধুকে কিছু আলাদা রূপ দেখাতে হবে, যেমন:

  • সি
  • পাতার মর্মর / পরিকল্পনা
  • বেসিক
  • বোর্ন-শেল
  • Prolog

আমি মনে করি সি এবং এলআইএসপি ভাল শুরু করার পয়েন্ট, এটি দেখায় যে বিভিন্ন ভাষা বিভিন্ন কাজের জন্য আরও উপযুক্ত হতে পারে। আমি সবকিছুর জন্য হাস্কেল বা এরলং ব্যবহার করে বিশ্বাস করি না।

একটি সাধারণ প্রসেসরের জন্য মেশিন কোড (বা এসেমব্লার) খুব আকর্ষণীয়ও হতে পারে। আমি সর্বদা খুশি ছিলাম আমি আমার প্রথম সি 64 তে মেশিন কোড দিয়ে শুরু করেছি । ( এমওএস 6510 ) হ্যান্ডস অন অভিজ্ঞতা যা "বর্জ্য" সীমাবদ্ধ সময়ের সাথে প্রাপ্ত বয়স্ক হিসাবে পাওয়া শক্ত।


আমার দ্বিমত আছে কেন অল্প বয়সী বাচ্চা, গণিতে আকর্ষণীয়, মেশিন কোডের প্রতি আকৃষ্ট হবে? এবং কেন সি? প্রসেসর সম্পর্কে অ্যাসেমব্লিলি অনেক বেশি জ্ঞান অনুমান করে। সি একইভাবে অনেক প্রয়োজনীয়তা তৈরি করে যা গুরুতর প্রোগ্রামিং শেখার জন্য কারও কাছে সবচেয়ে ভাল থাকে: পয়েন্টার, রেজিস্টার, স্কোপিং, প্রকারগুলি। এই জাতীয় ব্যক্তির জন্য প্রোগ্রামিংয়ের প্রথম পরিচিতির জন্য, অ্যালগরিদমগুলিতে বা গাণিতিক ধারণাগুলির প্রয়োগের (সম্ভাব্যতা, এলোমেলোতা, সিমুলেশন) উপর দৃষ্টি নিবদ্ধ করা এমন কিছু আরও ভাল। পাইথন, লিসপ / ফোর্থ, বেসিক এমনকি। বোর্ন-শেল ?? কেন? ...
আসাদ ইব্রাহিম

0

আমার কাছে, প্রোগ্রামিং শুরু হয় "কিছু করার" ইচ্ছা থেকে, একটি "কি তবে?" প্রশ্ন:

  • "আমি নিজের ওয়েবসাইট তৈরি করতে চাই", তাই এইচটিএমএল ইত্যাদি সম্পর্কে শিখুন

  • "আমি ঘৃণা করি যে আমাকে এক্স ক্লিক করতে হবে বা আমি যখনই প্রতিবার ভিজিট করি এই ওয়েব সাইটে আমি Y দেখতে পাচ্ছি that সেটিকে স্বয়ংক্রিয় করার কোনও উপায় নেই?" সুতরাং আপনি বুকমার্কলেট বা ব্রাউজারের এক্সটেনশানগুলি লেখার বিষয়ে শিখেন।

  • "আমি আমার সমস্ত সংগীতকে ক্যাটালগ করতে চাই এবং আমি যে সরঞ্জামগুলি দেখেছি সেগুলির কোনওটিই আমার পছন্দ মতো করে না", সুতরাং আপনি ডাটাবেসগুলি সম্পর্কে শিখুন।

  • "আমি আমার ম্যাথ ক্লাবের জন্য ব্যয়গুলি ট্র্যাক করতে চাই", সুতরাং আপনি স্প্রেডশিট, প্রোগ্রামিং ম্যাক্রো, অথবা এমনকি ডাটাবেসগুলি সম্পর্কেও শিখতে পারেন।

আদেশের জন্য ড্রাইভ সত্যিই সেখানে হতে, অন্তর্নিহিত সমস্যা থেকে আসা অতি হয়েছে তাকেতিনি যে সমস্যাটি সমাধান করতে চান তার সন্ধান করার চেষ্টা করব এবং তারপরে একটি সরঞ্জাম / ভাষা / সিস্টেম বেছে নেব যা তাকে সমাধানটি স্বয়ংক্রিয় / প্রোগ্রাম করতে দেয়।


-2

আমার মতে হাস্কেল এবং ম্যাথমেটিকা ​​যাবার উপায়। বেশিরভাগ কার্যকরী ভাষাগুলিও অঙ্কের পক্ষে ভাল। পাইথনও ভাল, গণিতের ডকুমেন্টেশনগুলি দেখুন

এই মডিউলটি সর্বদা উপলব্ধ। এটি সি স্ট্যান্ডার্ড দ্বারা নির্ধারিত গাণিতিক ফাংশনগুলিতে অ্যাক্সেস সরবরাহ করে।

এই ফাংশনগুলি জটিল সংখ্যা সহ ব্যবহার করা যায় না; জটিল সংখ্যার জন্য সমর্থন প্রয়োজন হলে cmath মডিউল থেকে একই নামের ফাংশন ব্যবহার করুন । জটিল সংখ্যাগুলি সমর্থন করে এমন ফাংশনগুলির মধ্যে পার্থক্য এবং যেগুলি তৈরি হয় না কারণ বেশিরভাগ ব্যবহারকারী জটিল সংখ্যা বোঝার জন্য যথেষ্ট পরিমাণে গণিত শিখতে চান না। জটিল ফলাফলের পরিবর্তে একটি ব্যতিক্রম প্রাপ্তি প্যারামিটার হিসাবে ব্যবহৃত অপ্রত্যাশিত জটিল সংখ্যাটি সনাক্তকরণের অনুমতি দেয়, যাতে প্রোগ্রামার নির্ধারণ করতে পারে যে এটি কীভাবে এবং কেন প্রথম স্থানে তৈরি হয়েছিল।

নিম্নলিখিত ফাংশনগুলি এই মডিউল দ্বারা সরবরাহ করা ...

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.