في هذا الدرس من #دورة_الجافا - شرح المتغيرات
ماهي المتغيرات Variables
انواع المتغيرات
المتغيرات البسيطة Primitive data type
المتغيرات المتطورة Reference data type
تسمية المتغيرات
---
الدرس على يوتيوب http://youtu.be/KEM-h4Ffu6k
The outlines of this lecture:
- Memory Addresses in Computer
- Definition of Pointers
- Access to Pointer Value
- star and & Operators
- Passing Pointer as Parameters
- Pointers with Constants
- Pointers with String
- Arrays of Pointers
- cString library
- Exercise
In this lecture, I present the basics of C ++ , I cover :
- Introduction
- Your first program
- Escape characters
- Data types
- Variables
- Scope
- Constants
- Input and output
- Storage classes
- Mathematical calculations
- Shifting
- Logical operations
In this lecture, I present concept of functions in C ++ , I cover :
-The concept of functions
-Function template and definition
-Explanation of an example of a Factorial function
-Mathematical examples
-Empty arguments
-Function of perfect number
-Function of prime number
-Function of friendly numbers
-Generate random numbers
-Example of dice game
-GRN problems
-Time function
-Enumeration
-Crops game
-The concept of recursion function
-Example of recursion function
-Fibonacci series with recursion
-Reference arguments
-Default arguments
-Overloading functions
-Examples of overloading
-Template functions
عُرف علم التشفير أو التعمية منذ القدم، حيث استخدم في المجال الحربي والعسكري. فقد ذكر أن أول من قام بعملية التشفير للتراسل بين قطاعات الجيش هم الفراعنة. وكذلك ذكر أن العرب لهم محاولات قديمة في مجال التشفير فقد كان القصد من استخدام التشفير هو إخفاء الشكل الحقيقي للرسائل حتى لو سقطت في يد العدو فإنه تصعب عليهم فهمها.
وفي عصرنا الحالي باتت الحاجة ملحة لاستخدام هذا العلم "التشفير" وذلك لإرتبط العالم ببعضه عبر شبكات مفتوحة. حيث يتم استخدام هذه الشبكات في نقل المعلومات إلكترونياً سواءً بين الأشخاص العاديين او بين المنظمات الخاصة والعامة، عسكرية كانت أم مدنية. فلابد من طرق تحفظ سرية المعلومات. فقد بذلت الجهود الكبيرة من جميع أنحاء العالم لإيجاد الطرق المثلى التي يمكن من خلالها تبادل البيانات مع عدم إمكانية كشف هذه البيانات.
study Domain Transform for Edge-Aware Image and Video ProcessingChiamin Hsu
This document summarizes the domain transform approach for real-time edge-aware image and video processing.
1) It presents a method to perform edge-preserving filtering by applying 1D linear filters on a transformed domain, rather than directly applying computationally expensive 2D bilateral filters.
2) The domain transform maps pixels from the image plane to a new domain based on their spatial coordinates and color values. Smoothing is done in this transformed domain, which approximates edge-preserving filtering in the original image plane.
3) Key advantages are that the domain transform allows replacing 2D filtering with more efficient 1D filtering, enabling real-time processing at arbitrary scales. This makes possible applications like depth
Wavelet analysis involves representing a signal as a sum of wavelet functions of varying location and scale. Wavelet transforms allow for efficient video compression by removing spatial and temporal redundancies. Without compression, transmitting uncompressed video would require huge storage and bandwidth. Using wavelet compression, a day of video could be stored using the same space as an uncompressed minute. The discrete wavelet transform decomposes a signal into different frequency subbands, making it suitable for scalable and tolerant video compression standards like JPEG2000. Wavelet compression provides better quality at low bit rates compared to DCT techniques like JPEG.
This document provides an overview of image enhancement techniques. It discusses the objectives of image enhancement, which is to process an image to make it more suitable for a specific application or task. The document focuses on spatial domain techniques for image enhancement, specifically point processing methods and histogram processing. It categorizes image enhancement methods into two broad categories: spatial domain methods, which directly manipulate pixel values; and frequency domain methods, which first convert the image into the frequency domain before performing enhancements.
The document discusses various image enhancement techniques in digital image processing. It describes point operations like image negative, contrast stretching, thresholding, brightness enhancement, log transformation, and power law transformation. Contrast stretching expands the range of intensity levels and can be done by multiplying pixels with a constant, using a transfer function, or histogram equalization. Thresholding converts an image to binary by assigning pixel values above a threshold to one level and below to another. Log and power law transformations compress high intensity values and expand low values to enhance an image. Matlab code examples are provided for each technique.
Teleconferencing allows for real-time communication between geographically dispersed groups through audio, video, and other means. It has various uses in education, training, business, and governance. Advantages include accessibility, cost-effectiveness, and enabling interaction between remote groups. There are different types of teleconferencing including audio conferencing using phones, as well as videoconferencing using cameras and displays to see and interact with other sites in real-time. Web conferencing also allows for online meetings through internet browsers.
In this lecture, I present concept of functions in C ++ , I cover :
-The concept of functions
-Function template and definition
-Explanation of an example of a Factorial function
-Mathematical examples
-Empty arguments
-Function of perfect number
-Function of prime number
-Function of friendly numbers
-Generate random numbers
-Example of dice game
-GRN problems
-Time function
-Enumeration
-Crops game
-The concept of recursion function
-Example of recursion function
-Fibonacci series with recursion
-Reference arguments
-Default arguments
-Overloading functions
-Examples of overloading
-Template functions
عُرف علم التشفير أو التعمية منذ القدم، حيث استخدم في المجال الحربي والعسكري. فقد ذكر أن أول من قام بعملية التشفير للتراسل بين قطاعات الجيش هم الفراعنة. وكذلك ذكر أن العرب لهم محاولات قديمة في مجال التشفير فقد كان القصد من استخدام التشفير هو إخفاء الشكل الحقيقي للرسائل حتى لو سقطت في يد العدو فإنه تصعب عليهم فهمها.
وفي عصرنا الحالي باتت الحاجة ملحة لاستخدام هذا العلم "التشفير" وذلك لإرتبط العالم ببعضه عبر شبكات مفتوحة. حيث يتم استخدام هذه الشبكات في نقل المعلومات إلكترونياً سواءً بين الأشخاص العاديين او بين المنظمات الخاصة والعامة، عسكرية كانت أم مدنية. فلابد من طرق تحفظ سرية المعلومات. فقد بذلت الجهود الكبيرة من جميع أنحاء العالم لإيجاد الطرق المثلى التي يمكن من خلالها تبادل البيانات مع عدم إمكانية كشف هذه البيانات.
study Domain Transform for Edge-Aware Image and Video ProcessingChiamin Hsu
This document summarizes the domain transform approach for real-time edge-aware image and video processing.
1) It presents a method to perform edge-preserving filtering by applying 1D linear filters on a transformed domain, rather than directly applying computationally expensive 2D bilateral filters.
2) The domain transform maps pixels from the image plane to a new domain based on their spatial coordinates and color values. Smoothing is done in this transformed domain, which approximates edge-preserving filtering in the original image plane.
3) Key advantages are that the domain transform allows replacing 2D filtering with more efficient 1D filtering, enabling real-time processing at arbitrary scales. This makes possible applications like depth
Wavelet analysis involves representing a signal as a sum of wavelet functions of varying location and scale. Wavelet transforms allow for efficient video compression by removing spatial and temporal redundancies. Without compression, transmitting uncompressed video would require huge storage and bandwidth. Using wavelet compression, a day of video could be stored using the same space as an uncompressed minute. The discrete wavelet transform decomposes a signal into different frequency subbands, making it suitable for scalable and tolerant video compression standards like JPEG2000. Wavelet compression provides better quality at low bit rates compared to DCT techniques like JPEG.
This document provides an overview of image enhancement techniques. It discusses the objectives of image enhancement, which is to process an image to make it more suitable for a specific application or task. The document focuses on spatial domain techniques for image enhancement, specifically point processing methods and histogram processing. It categorizes image enhancement methods into two broad categories: spatial domain methods, which directly manipulate pixel values; and frequency domain methods, which first convert the image into the frequency domain before performing enhancements.
The document discusses various image enhancement techniques in digital image processing. It describes point operations like image negative, contrast stretching, thresholding, brightness enhancement, log transformation, and power law transformation. Contrast stretching expands the range of intensity levels and can be done by multiplying pixels with a constant, using a transfer function, or histogram equalization. Thresholding converts an image to binary by assigning pixel values above a threshold to one level and below to another. Log and power law transformations compress high intensity values and expand low values to enhance an image. Matlab code examples are provided for each technique.
Teleconferencing allows for real-time communication between geographically dispersed groups through audio, video, and other means. It has various uses in education, training, business, and governance. Advantages include accessibility, cost-effectiveness, and enabling interaction between remote groups. There are different types of teleconferencing including audio conferencing using phones, as well as videoconferencing using cameras and displays to see and interact with other sites in real-time. Web conferencing also allows for online meetings through internet browsers.
شرحت في هذا الملف نظرية ذات الحدين المتعلقة بإيجاد صيغة عامة لتبسيط أي مقدار جبري رياضي ذو حدين مرفوعين لأس معين.
أول واضع لهذه النظرية هو العالم المسلم (عمر خيام) المولود فيما بين 1038 و 1048 م، المتوفى فيها ما بين 1123 و 1124 م، بعمر ناهز 83 عاما، قضى اكتشافات رياضية كثيرة، لكن للأسف أن غالبها مفقود.
اسم النظرية بالإنجليزية: (Binomial theorem)
10 Little Tricks to Get Your Class’s Attention (and Hold It)kinan keshkeh
This document provides tips for teachers to get and maintain their students' attention. It suggests starting with engaging techniques like varying your voice, showing striking visuals, or making surprising statements. To hold attention, the document recommends making lessons relevant, at an appropriate difficulty level, clear with visuals, and involving students through questions and humor related to the content.
Simpson and lagranje dalambair math methods kinan keshkeh
This document contains C++ code implementing Simpson's rule and Lagrange interpolation. It includes functions for:
1) Calculating the integral of a function using Simpson's rule
2) Filling an array with function values at points and calculating the Lagrange polynomial
3) Drawing the function graphically
The main function provides menus to call the Simpson's rule or Lagrange interpolation methods and draw the results.
Shapes and calculate (area and contour) / C++ oop conceptkinan keshkeh
The document describes a C++ program that uses object-oriented programming concepts to represent matrices and perform operations on them such as reading, writing, adding, summing elements, and finding the maximum element. The main functionality includes defining a struct to represent matrix elements and nodes, reading in matrices from user input, writing matrices to output, adding two matrices by iterating through their elements, summing all elements of a matrix, and finding the maximum value and its position. The program uses a menu to allow the user to choose which operation to perform on sample matrices.
Shapes and calculate (area and contour) / C++ oop conceptkinan keshkeh
The document describes a C++ program that uses object-oriented programming concepts to represent matrices and perform operations on them like addition, finding the maximum value, and calculating the total sum. The program uses linked lists to store the matrix elements and defines functions for reading, writing, adding, and analyzing matrices. It provides a menu-driven interface for users to choose different operations to perform on matrices of varying sizes.
This document provides instructions for drawing graphs in Pascal using the Graph unit. It discusses initializing graphics mode, calculating appropriate coordinates for the screen, and algorithms for drawing normal and polar functions. Examples are given to illustrate drawing the linear function f(x)=x and polar function f(u)=1+sin(u). The document concludes with reminding students what they need to do in exams and providing contact information for the programming group.
The document discusses programming units in Pascal. It explains that a unit divides code into an interface section and implementation section. The interface section defines constants, types, variables and function/procedure headers that are visible to other units/programs. The implementation section contains the private code and is not visible outside the unit. An example unit is provided that contains functions for exponentiation and reversing numbers, and a procedure for printing a linked list backwards. The document also demonstrates using the example unit in a sample program.
The document discusses double linked lists and procedures for manipulating them. It defines a record type for the linked list nodes with ID, next, and prev fields. It presents procedures for inserting a node, deleting a node, and searching for a node in the list. For insertion, it checks if the list is empty before adding the new node in the correct location based on ID. For deletion, it handles removal of first, last, and middle nodes by adjusting the next and prev pointers of neighboring nodes. It assigns a flag variable to indicate success or failure. It provides +15 bonus points for writing a search procedure that returns a pointer to the found node's location and a character flag for the search status.
The document discusses linked lists and procedures for creating, adding, and deleting nodes from single linked lists. It provides examples of procedures to create lists from the first node to last (FIFO) and last to first (FILO). It also includes procedures for adding a node to the list in different cases, and deleting a node by finding and removing the target node. The homework assignments involve writing procedures to search for nodes in a linked list based on values, add a node to a specified position, replace node values, and create and combine two linked lists with different creation orders.
The document discusses pointers and static vs dynamic variables in programming. It then describes stacks and how to implement push and pop operations on a stack to add or remove elements. Examples are provided of using stacks to store characters of a string. The homework asks to evaluate an expression like ((1*(3+2))*1)+3 using a stack and the push/pop operations, with only one stack allowed.
This document provides instructions for a programming assignment on binary files. It defines a record type for books with fields for number, title, author, publication date, and borrowed status. It describes a program that reads book data from a text file into a binary file, allows the user to specify borrowed books by number, updates the borrowed field in the binary file, and outputs a list of borrowed books. It also shows how to access specific records in the binary file using seek and read the publication dates of the 5th and last books.
The document discusses file input/output in Pascal, including text files and binary files. It provides examples of opening, reading from, writing to, and closing text files, as well as examples appending to existing files. It also discusses replacing words in a text file and summarizing data from a file.
This document discusses records in Pascal programming. It defines records as a complex data type that allows combining simple variables. Examples of records include a person record with fields for name, age, etc. and an employee record with fields for address, salary, and a person subrecord. Procedures are provided to input, output, combine, and calculate the absolute value of complex number records. Homework involves writing a program to input, output, sort, and update employee records for a company with n employees.
This document contains program code and notes about programming concepts like procedures, functions, variables, sets, and arrays. It discusses different types of variables, set operations, reading and printing sets, and provides examples of code for procedures to input and output sets. It also provides exercises asking the reader to write a program to manage student enrollment in math and English classes using sets and arrays.
The document discusses file input/output in Pascal, including text files and binary files. It provides examples of opening, reading from, writing to, and closing text files, as well as examples appending to existing files. Functions and procedures covered include Assign, Reset, Rewrite, Read, Readln, Write, Writeln, Close, Append, Eof, and Eoln. Homework is assigned to add sum columns to and print from a student records file containing names, IDs, and marks for two subjects.
This document discusses records in Pascal programming. It defines records as a complex data type that allows combining simple variables. Examples of records include a person record with fields for name, age, etc. and an employee record with fields for address, salary, and a person subrecord. Procedures are provided to input, output, combine, and calculate the absolute value of complex number records. Homework involves writing a program to input, output, sort, and update employee records for a company with n employees.
This document contains program code and notes about programming concepts like procedures, functions, variables, sets, and arrays. It discusses different types of variables, set operations, reading and printing sets, and provides examples of code for inputting and outputting sets. It also provides exercises for students to practice creating programs that work with student data stored in sets and arrays.
The document discusses templates in C++. It explains that templates allow functions and classes to be defined generically for multiple data types. It provides an example of a Pair class template that can represent a pair of values of any type. The document also discusses how to define template class members and prefixing the template declaration with template<class T> when defining members outside the class.
This document discusses polymorphism and related object-oriented programming concepts like abstract classes, pure virtual functions, downcasting, and upcasting. It explains that polymorphism allows associating multiple meanings with a function name using virtual functions. Abstract classes contain at least one pure virtual function and can only be used to derive other classes. Downcasting from a base class to a derived class requires dynamic_cast while upcasting is done automatically. The document cautions that destructors should be virtual to ensure proper object cleanup during polymorphic operations.
The document discusses the concept of inheritance in object-oriented programming. It defines inheritance as a process where a new derived class is created from a base class, and the derived class inherits the member variables and functions of the base class. It provides examples of defining derived classes that inherit from base classes, how to call functions from the base class, and how constructors and destructors work in inherited classes. The document also covers protected access modifiers, notes that overloaded functions are not inherited, and that classes can inherit from multiple parent classes.
Algorithm in discovering and correcting words errors in a dictionary or any word editor .
1. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
* جاهعة دهشق
* كلية الهنذسة الوعلوهاتية
* السنة الثانية
Algorithms and Data Structure
Student:
Kinan keshkeh
Eng :
Eng.Maher Al Sarem
2. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
خوارزمية نظام الي لاكتشاف الاخطاء وتصحيحيها في محرر
نصوص:
بنى المعطيات :
)1 مصفوفة مؤشرات على سلاسل من نوع word :
Dictionary=array*‘a’..’z’+ of pword
)2 مؤشر على العقدة :
Pword=*word
)3 العقدة word :
Word=Record
{
X:ineger; // عدد دٌل على عدد احرف الكلمة
Next:pword; مؤشر على الكلمة التال ةٌ //
Str:string;
}
1( بما اننا نحتاج لعمل ةٌ بحث عن الكلمة المدخلة)للتاكد منها ( ف كامل مفردات اللغة ,
فللسهولة نضع المفردات ببن هٌ بح ثٌ تفرز تلك المفردات باوائل الحروف , وكل حرف أجنب مفروز ف هٌ مفرداته )تصاعد اٌ( لسهولة البحث )حتى لا نبحث عن كلمات اللغة حتى ال
NULL , و نتوقف عندما نجد الكلمة الاكبر من الكلمة المرادة وذلك عند عمل ةٌ البحث
والتاكد ( .
- و لان كلمات اللغة الانكل زٌ ةٌ مثلا.. قابلة لاضافة المرادفات والتعد لٌات المستمرة ..
فتكون البن ةٌ الد نٌام كٌ ةٌ ه الملاءمة اكثر.. Linked List
2( اما من اجل العقدة Word ف اخترنا ان تكون السلسلة مؤلفة من تسج لٌة تحوي
)المؤشر( على الكلمة التال ةٌ بالقاموس و)الكلمة( و ) عدد احرف الكلمة (
وعدد احرف الكلمة فٌ دٌ من اجل طباعة البدائل ...
3. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
جداول التحليل الأولي لخوارزمية التاكد والتصحيح بالقاموس :
اسن التابع
Search الوهوة رٌى الكلمة المدخلة و رٌد اما موجودة او غ رٌ موجودة
)تابع مساعد للاجرائ ةٌ Bring _same )
يستخذم في اجرائ ةٌ طباعة البدائل
Bring_same التوصيف هذا التابع بٌحث عن الكلمة المدخلة بالسلسلة ذات الحرف الت تبدا به الكلمة
اسن الاجرائية
Bring_same الوهوة طباعة الكلمة اذا كانت موجودة
طباعة البدائل اذا كانت غ رٌ موجودة ثم اعادة الادخال ..
يستخذم في التابع الرئ سٌ main التوصيف جٌلب الكلمات ذات نفس طول الكلمة والمختلفة ببعض الاحرف ) مسح لاخر السلسلة(....
جٌلب الكلمات الت تطابق الكلمة وتز دٌ عنها بالاحرف المختلفة)حرف او حرف نٌ ل سٌ اكثر(
)مسح اخر لاخر السلسلة(..
4. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
جداول التحليل المفصلة لخوارزمية البحث والتاكد من وجود الكلمة بالقاموس :
اسن التابع
Search الوهوة رٌى الكلمة المدخلة و رٌد اما موجودة او غ رٌ موجودة
)تابع مساعد للاجرائ ةٌ Bring _same )
يستخذم في اجرائ ةٌ طباعة البدائل
Bring_same التوصيف
)الخوارزهية
بالعربي(
هذا التابع بٌحث عن الكلمة المدخلة بالسلسلة ذات الحرف الت تبدا به الكلمة c من اول السلسة dic[c] حتى ال NULL ان خرج ووجد الكلمة --- < اعادة موجود
والا ---- < اعادة غ رٌ موجود
شرط الاستذعاء وجود القاموس
مرتب تصاعد اٌ)ادخلت من الانترنت جم عٌ الكلمات للاحرف الخ a,b,s,..
عندما قمت بالتنف ذٌ(.
واستدعاء الكلمة وان تبدا الكلمة المدخلة بحرف ابجدي انكل زٌي لا رمز..
رأس التابع Search(Dic :Dictionary, Inputedword :string, var b:Boolean)
توصيف
الوتحولات
Dic من نوع القاموس
Inputedword الكلمة المدخلة
تع دٌ الاجرائ ةٌ متحول منطق b ان وجدت الكلمة ام لم توجد..
الخوارزهية
Search(Dic :Dictionary, Inputedword :string):Boolean begin L:pword; C: char; C:=inputedword[1]; L:=Dic[c]; (الدخول لسلسلة حرف البدا ةٌ ) While(L<>NuLL)and(L^.str<Inputedword) do )التفحص عن الكلمة(
Search:=p^.next; If(L<>Null)and(L^.str= Inputedword) then Search:=true; else Search:=false; End;
5. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
اسن الاجرائية
Bring_same الوهوة طباعة الكلمة اذا كانت موجودة
طباعة البدائل ) 6 او اكثر قل لٌا( اذا كانت غ رٌ موجودة ثم اعادة الادخال ..
يستخذم في التابع الرئ سٌ main التوصيف
)الخوارزهية
بالعربي(
-1 التابع وجد الكلمة طباعتها
-2 لم جٌدها:
** مسح اول للسلسلة )الكلمات ذات نفس الطول(: //قمت بمسح نٌ للاولو ةٌ فقط..والا بمسح وح دٌ
* اذا وجد نفس طول الكلمة :
اختبر تساوي)تطابق( الحروف:
اذا كان الاختلاف)بحرف واحد( او)حرف نٌ( )اوثلاثة(:
اطبع الكلمة الت وجدناها
**مسح ثان للسلسلة )الكلمات الاكبر والت تز دٌ ببعض الاحرف(:
* طباعة الكلمات)ار دٌ ل سٌ اكثر من 6 كلمات اقتراحات ( – -
الاكبر ف السلسلة من الكلمةالمدخلة والت لاتز دٌ بعدد احرفها عن الكلمة الاصل ةٌ
باكثر من )حرف او حرف نٌ او ثلاث ل سٌ اكثر( ..
**اعد ادخال الكلمة.
ملاحظة: اجر تٌ مسح نٌ للسلسسة.. لاجراء الاولو ةٌ.. ح ثٌ ان الكلمة ذات نفس عدد الاحرف
)رغم انها اخ رٌة ابجد اٌ( ابدى من الكلمات الاطول.
طرق اخرى
لو لم حٌدد بنص المسألة ان العمل ةٌ ))اتمام(( للكمات المدخلة وتصح حٌها..
** اذا كانت الكلمة المدخلة مز دٌة بحرف او حرف نٌ زٌ دٌ الشرط التال :
احذف حرف واسنده لمتحول string ..
اذا وجدت الكلمة --- - < اطبعها كخ اٌر اول ثم اتمم الاقتراحات..
والا
احذف حرف اخر واجري نفس العمل ةٌ ..
مثلا: ادخال booki ----- < قٌترح book
او: ادخال bookia ----- < قٌترح book شرط الاستذعاء
وجود القاموس مرتب تصاعد اٌ)ادخلت من الانترنت جم عٌ الكلمات للاحرف الخ a,b,s,.. عندما قمت بالتنف ذٌ(.
واستدعاء الكلمة وان تبدا الكلمة المدخلة بحرف ابجدي انكل زٌي لا رمز..
رأس التابع
Bring_same(Dic :Dictionary, Inputedword :string)
6. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
توصيف
الوتحولات
Dic من نوع القاموس
Inputedword الكلمة المدخلة
اجرائ ةٌ print(string) طباعة المحارف
اجرائ ةٌ length(string) تقوم بحساب طول السلسلة المحرف ةٌ
الخوارزهية
Bring_same(Dic :Dictionary, Inputedword :string)
F:Boolean;
L:pword;
Ch: char;
K:int ; (تعد عدد الاحرف المختلفة )
W:string; (اضع بها الكلمات الت امر عل هٌا بالسلسة )
f:=search(Dic,InputedWord); (التاكد من الوجود )
if( f) then )موجودة(
print(‘Correct word!!’,InputedWord);
else
begin
print(‘~~ Here you are some suggestion’);
ch:= InputedWord[1];
L:=Dic[ch]; ( امساك راس سلسلة حرف الكلمة الاول )
While(L<>Null) do
Begin
W:=L^.str;
K:=0;
If length(w(=length(InputedWord) then تساوي
الطول
begin
For(i:=1 to (length(InputedWord)) do
اختبارتطابق الحروف
If(w[i] <> InputedWord[i]) then
K:=k+1;
If(k=1) or(k=2)or(k=3) then
Print(w)
end;
7. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
l:=l^.next;
End;( المرور الاول )
L:=Dic[ch];( امساك راس سلسلة حرف الكلمة الاول )
Space:=0;
While(L<>Null) do
Begin
W:=L^.str;
If ( W> Inputedword)and(length(w)-
length(Inputedword) <=3 ) and(space<4)
then
begin
space:=space+1 الكلمات الت تز دٌ ب ثلاث
احرف
Print(w);
End;
L:=l^.next;
End;( المرور الثان )
end;
8. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
نتائج التنفيذ:
قراءة كلمات القاموس من ال NoteBad
9. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
كلمة موجودة بالقاموس
اما طباعة البدائل :
لاحظ ان الكلمات ذات نفس الطول)رغم انها اخ رٌة ابجد اٌ( تطبع بالاول !
10. 2013 تقر رٌ الخوارزم اٌت و بنى المعط اٌت 1
انتهى التقرير