c programming language
Recently Published Documents


TOTAL DOCUMENTS

340
(FIVE YEARS 139)

H-INDEX

9
(FIVE YEARS 2)

2022 ◽  
Vol 44 (1) ◽  
pp. 1-50
Author(s):  
Omar Inverso ◽  
Ermenegildo Tomasco ◽  
Bernd Fischer ◽  
Salvatore La Torre ◽  
Gennaro Parlato

Bounded verification techniques such as bounded model checking (BMC) have successfully been used for many practical program analysis problems, but concurrency still poses a challenge. Here, we describe a new approach to BMC of sequentially consistent imperative programs that use POSIX threads. We first translate the multi-threaded program into a nondeterministic sequential program that preserves reachability for all round-robin schedules with a given bound on the number of rounds. We then reuse existing high-performance BMC tools as backends for the sequential verification problem. Our translation is carefully designed to introduce very small memory overheads and very few sources of nondeterminism, so it produces tight SAT/SMT formulae, and is thus very effective in practice: Our Lazy-CSeq tool implementing this translation for the C programming language won several gold and silver medals in the concurrency category of the Software Verification Competitions (SV-COMP) 2014–2021 and was able to find errors in programs where all other techniques (including testing) failed. In this article, we give a detailed description of our translation and prove its correctness, sketch its implementation using the CSeq framework, and report on a detailed evaluation and comparison of our approach.


2022 ◽  
Vol 24 (2) ◽  
pp. 0-0

In last decade, there has been a growing awareness in E-Learning which is the most recent type of distance education, and becomes a highly significant model of educational technology. Today e-Learning studies indicate that there is an increasing use of this educational scheme for students, trainers and instructors which improve the learning capability of the students and trainee by depending on student-centered learning (SCL) scheme rather than using the traditional teacher or trainer centered teaching mechanism.However, students’ awareness for the advantage of using e-Learning has not been significantly investigated, especially in Iraq. The aim of this article is to inspect students’ awareness of the using of e-Learning at the Dohuk Polytechnic University. Participants involved in this study were 100 students studying the C++ programming language course during 2015-2016 and 2017-2018 academic years and 210 students studying computer application course during 2018-2019.


2022 ◽  
Vol 24 (2) ◽  
pp. 1-11
Author(s):  
Abdulraheem Jamil Ahmed ◽  
Falah Hasan Mohammed ◽  
Naji Abdullah Majedkan

In last decade, there has been a growing awareness in E-Learning which is the most recent type of distance education, and becomes a highly significant model of educational technology. Today e-Learning studies indicate that there is an increasing use of this educational scheme for students, trainers and instructors which improve the learning capability of the students and trainee by depending on student-centered learning (SCL) scheme rather than using the traditional teacher or trainer centered teaching mechanism.However, students’ awareness for the advantage of using e-Learning has not been significantly investigated, especially in Iraq. The aim of this article is to inspect students’ awareness of the using of e-Learning at the Dohuk Polytechnic University. Participants involved in this study were 100 students studying the C++ programming language course during 2015-2016 and 2017-2018 academic years and 210 students studying computer application course during 2018-2019.


2022 ◽  
pp. 825-841
Author(s):  
Segun Aina ◽  
Samuel Dayo Okegbile ◽  
Adeniran Ishola Oluwaranti ◽  
Oghenerukome Brenda Okoro ◽  
Tayo Obasanya

The work reported in this article developed a home automated system using voice activation. This is with a view to providing users complete control over electrical appliances using simple easy to remember voice commands on an Android mobile device. This work was implemented using the Atmega 328 microcontroller, Relays and a Wi-Fi shield. The human voice is first converted to text using a Natural language processing tool from the Android based application. Thereafter, the text is sent over the internet via the PubNub to the microcontroller. The Atmega 328 microcontroller was programmed on an Arduino using C programming language and the Android based application was developed using Android Software Development Kit. Results obtained from the testing show that the implemented system achieves the mean scores of 8, 7.6, and 7.2 for ease of use, learnability and effectiveness respectively justifying the fact that the system is capable of controlling appliances by changing their state (ON/OFF) from remote a location with a response time within the reasonable limit.


2021 ◽  
Vol 21 ◽  
pp. 383-390
Author(s):  
Piotr Pawlak ◽  
Jakub Podgórniak ◽  
Grzegorz Kozieł

The computing power of modern computers is sufficient to break many cryptographic keys, therefore it is necessary to create an additional security layer which hides the very fact of transmitting a secret message. For this purpose, steganographic methods can be used. The article is devoted to the analysis of the possibility of implementing digital images steganography with the use of the C # programming language. Firstly, existing libraries and mathematical transformations which can help with performing steganography were found. Also, own code solutions were implemented. In order to objectively evaluate the methods of data hiding, the parameters describing the degree of distortion of transforms and hidden images were calculated. Subsequently, optimal solutions for specific problems were identified and demonstrational data hiding was performed. Based on the obtained results, it can be concluded that it is possible to successfully implement steganography in the C # language. There are many ready-made libraries and tools, the effectiveness of which has been verified in the conducted analysis. Due to the contradictory of stenographic requirements, it is not possible to meet all of them optimally, i.e. undetectability, resistance to destruction and information capacity. For this reason, it is not possible to clearly indicate the best solutions. In order to achieve satisfactory results, one should look for compromises between the set requirements.


2021 ◽  
Author(s):  
Vincent Yong Kai Loung ◽  
Chee Yen Leow ◽  
Edwin Nair Jannatheran

Today, a wide variety of IoT applications and services have appeared and one of them is the Smart Home. The objective of this article is to present basic electrical wiring using Arduino UNO board and ESP8266, writing in C programming Language in Arduino software Integrated Development Environment (IDE) to develop and build a prototype Smart Home Lighting System that displays the lighting of two fluorescent lamps when the switch button was turned on by the user from ESP8266 Web Server. The system installation has a real-time synchronization that is necessary and safe for immersive IoT applications.<br>


2021 ◽  
Author(s):  
Vincent Yong Kai Loung ◽  
Chee Yen Leow ◽  
Edwin Nair Jannatheran

Today, a wide variety of IoT applications and services have appeared and one of them is the Smart Home. The objective of this article is to present basic electrical wiring using Arduino UNO board and ESP8266, writing in C programming Language in Arduino software Integrated Development Environment (IDE) to develop and build a prototype Smart Home Lighting System that displays the lighting of two fluorescent lamps when the switch button was turned on by the user from ESP8266 Web Server. The system installation has a real-time synchronization that is necessary and safe for immersive IoT applications.<br>


Electronics ◽  
2021 ◽  
Vol 10 (24) ◽  
pp. 3084
Author(s):  
Adrian-Tiberiu Costin ◽  
Daniel Zinca ◽  
Virgil Dobrota

Capturing traffic and processing its contents is a valuable skill that when put in the right hands makes diagnosing and troubleshooting network issues an approachable task. Apart from aiding in fixing common problems, packet capture can also be used for any application that requires getting a deeper understanding of how things work under the hood. Many tools have been developed in order to allow the user to study the flow of data inside of a network. This paper focuses on documenting the process of creating such tools and showcasing their use in different contexts. This is achieved by leveraging the power of the C++ programming language and of the libtins library in order to create custom extensible sniffing tools, which are then used in VoIP (Voice over IP) and IDS (Intrusion Detection System) applications.


2021 ◽  
Author(s):  
A. Yagodkin ◽  
V. Tuinov ◽  
V. Lavlinskiy ◽  
Yu. Tabakov

The article presents the results of the study of signals taken from the human cerebral cortex, and presents the mathematical foundations of analysis using the methods of Daubechy and Haar. A comparative analysis of the method of the Daubechy and Haar wavelet transform implemented in MATLAB and developed using the C++ programming language in the course of the study on the example of a recorded audio signal with natural interference is given.


2021 ◽  
Vol 4 ◽  
pp. 64-71
Author(s):  
Volodymyr Boublik

The paper investigates a possibility of developing a non-virtual hierarchy for a special case of class signature, which may possess different interpretations. The approach is similar to double dispatching in the C ++ programming language. As an alternative to polymorphism, a non-polymorphic hierarchy has been suggested based on generic programming templates. This hierarchy is based on inverse parametrization for templates enabling constructing a general scheme for the design pattern. The pattern defined a class architecture suitable for static implementation of double dispatched multimethod for a special case of signature- defined interfaces.In fact, any abstract base class (interface) with purely virtual operations must acquire a polymorphic implementation. Besides, the polymorphism itself, the dependence of a virtual function on two objects – “this” and another parameter – requires the use of double dispatch, turning a class member function into a double dispatched multimethod.A preliminary consideration deals with issues of double dispatching in the C++ programming language. Inheritance with polymorphic class member functions is used. This requires special efforts of adding to both bases and derived classes a couple of virtual functions to support dispatching. In any case, this approach, besides using virtual functions, has a disadvantage of violating one of the SOLID principles, namely the principle of dependency inversion: base classes should not depend on derivatives, which negatively affects the quality of the software.Polymorphism is usually understood as the dynamic tuning of a program to the data type of the object that the program will encounter during its execution. That is, by its nature, polymorphism is a purely dynamic characteristic. However, in C++ literature and in practice, you can come across the term “static polymorphism”.At the same time, research of possibilities of generalized programming (templates) allows transferring some dynamic problems to the static level. In particular, a variant of static polymorphism application without virtual functions can be considered.A variant of non-virtual double scheduling has been proposed, generalized in the form of a created design pattern “Signature multimethod”. The use of the newly created pattern is illustrated with an example of implementing classes of complex numbers. The absence of violations of SOLID principles is shown, and the possibility of supplementing the hierarchy with new derived classes without the need to interfere with the structure of the base class is demonstrated.The approach suggested in this work has been used in courses in object-oriented programming at the Faculty of Informatics of Kyiv-Mohyla Academy.


Sign in / Sign up

Export Citation Format

Share Document