ProgCalc

تعليم

مجاني - مصمم لـ iPad

**ProgCalc Overview** ProgCalc is a high-precision (38-digit) programmable calculator with true-decimal arithmetic, offering a Swift programming language interface for creating complex algorithms. It supports both scalar and non-scalar data types and operations. Non-scalar data types include complex numbers, quaternions, n-dimensional vectors, arrays, lists, and hierarchical tuples. The app uses a tailored subset of the standard Swift language, optimized for numerical applications. It includes a comprehensive 38-digit scalar math library featuring well-known transcendental functions (trigonometric, hyperbolic, logarithmic, and exponential) as well as specialized functions such as arithmetic-geometric mean, arbitrary-precision rounding, modulo operations, binomial coefficients (log and normal), factorial functions (log and normal), ceiling and floor functions (toward -∞ and 0), and more. A detailed app documentation is included, accessible via the [2nd][8] key. It provides a comprehensive guide to all calculator features, a language reference with examples and grammar, and additional resources. **User Interface Modes** ProgCalc offers three interactive modes, detailed in the app documentation: - Standard infix notation (infiX, default) - Fully editable infix notation (infiXE) - Reverse Polish Notation (RPN) You can switch between modes from the device’s home screen by using a pressure gesture on the app icon. On iPad devices, dedicated mode-switch keys provide a more convenient option. **Additional Notes** - ProgCalc is ad-free and will remain so. - The app does not collect any information. - The app does not rely on any third-party software.

  • لم يحصل هذا التطبيق على تقييمات أو مراجعات كافية لعرض نظرة عامة.

Bug Fix Release 1.91 Several bugs related to property operator entry in infiX and infiXE interactive modes have been resolved. To test these fixes, try using the .map, .gmap, .gmapr, .bmap, .reduce, .zip, and .contains property operators in the interactive infix modes. These operators now work correctly with non-scalar types and non-scalar expression results, including operator chaining (e.g., .bmap(agm).map(sin).gmap(fixedround, 32)), without displaying confusing transient error messages. Additionally, some macOS shortcut keys have been updated or added. For detailed information about all the changes in this release, refer to the built-in app documentation, specifically in Section 11.9, “Release Notes.” All subsections have been updated. Late Bugs Detected: In infiX / infiXE interactive modes, memory registers ($m0 through $m11) are treated as scalar variables by default. If you store a tuple in a memory register and attempt to use chained property operators like '.map(.elem_access_op)' interactively (e.g., $m4.map(.y)), it will fail with: "syntax error, unexpected 'vector element access operator" However, the same operation works when compiled and run in a program: $m4.map(.y) // works in compiled programs This happens because memory registers are implicitly declared as scalars, and type-casting is not available interactively. var $m4: scalar // type-cast is not available interactively. Workaround: Now assume that you've stored a tuple value in the $m4 memory register. Define a tuple-type global variable that mirrors $m4, and avoid purging it. // type-cast is required. Refreshes value from $m4 on each execution. var m4: tuple = $m4 as tuple // purge(m4) Now, the same operation will work interactively -- use [2nd][swap|VARS] view to enter 'm4': m4.map(.y) // works — 'm4' has explicit tuple type Note that a tuple resulting from a 'vexpr' works interactively just as it does in a compiled program. For example, you can interactively create an array object, convert it to a tuple, and extract the .y field from each element to build a list of y-values: [ your_array ].map ( cis ) .map ( .y ) In general, any interactive expression requiring an explicit type cast will fail. For instance, starting with a 'vexpr' tuple and attempting '.map(.y)' will result in a syntax error in interactive mode, even though it works when compiled as type information would be available.

أوضح المطور "Neopoise" أن ممارسات خصوصية التطبيق قد تتضمن معالجة البيانات على النحو الموضح أدناه. لمزيد من المعلومات، الرجاء الاطلاع على سياسة خصوصية المطور .

  • لا يتم جمع البيانات

    لا يجمع المطور أي بيانات من هذا التطبيق.

    قد تختلف ممارسات الخصوصية، على سبيل المثال، حسب الميزات التي تستخدمها أو حسب عمرك. معرفة المزيد

    لم يشر المطور بعد إلى ميزات تسهيلات الاستخدام التي يدعمها هذا التطبيق. معرفة المزيد

    • الموفر
      • Akif M. Suyabatmaz
    • الحجم
      • 10.1 م.ب.
    • الفئة
      • تعليم
    • التوافق
      يتطلب iOS 15.0 أو أحدث
      • iPhone
        يتطلب iOS 15.0 أو أحدث
      • iPad
        يتطلب iPadOS 15.0 أو أحدث
      • iPod touch
        يتطلب iOS 15.0 أو أحدث
      • Mac
        يتطلب جهاز macOS 12.0 أو أحدث وجهاز Mac مع شريحة Apple M1 أو أحدث.
      • Apple Vision
        يتطلب visionOS 1.0 أو أحدث
    • اللغات
      • الإنجليزية
    • التصنيف العمري
      ٤‫+‬
    • حقوق النشر
      • © 2018, Akif Suyabatmaz