Learning Goal: I’m working on a c programming project and need a sample draft to

Learning Goal: I’m working on a c programming project and need a sample draft to help me learn.im gonna attach all 2 programs but because i cantr attach a zipfile now ill put it in word then ill send a zip file with all the c filesfor the book requests project:in the project there is a add_to function that add the new book to the end of the list, i want you to change that so it is: A daycare center would like to maintain a list of book requests from the teachers for their classroom libraries. Each book was stored with the title, author’s first name, last name, price, and classroom. Modify add_to_end function in book.c : a. Instead of adding to the end of the linked list, a book is added to an ordered linked list. A book is added to an ordered linked list by author’s last name and then by author’s first name. The list remains ordered after the new request is added. If two books have the same author, the order doesn’t matter. For example, a book by Ashley Spires should be before a book by Whee Winn in the list; a book by Elizabeth Spires should be after a book by Ashely Spires in the list. For the second project( cars2.c): Modify it so that it uses quick sort (qsort)to sorts the cars by city mpg. Name your program car2.c. Instead of using the sorting function i wrote in the program, use the quick sort library function and implement the comparison function.

Learning Goal: I’m working on a c programming exercise and need a sample draft t

Learning Goal: I’m working on a c programming exercise and need a sample draft to help me learn. 1. A daycare center would like to maintain a list of book requests from the teachers for their classroom libraries. Each book was stored with the title, author’s first name, last name, price, and classroom. Modify add_to_end function in book.c in Project 9: a. Instead of adding to the end of the linked list, a book is added to an ordered linked list. A book is added to an ordered linked list by author’s last name and then by author’s first name. The list remains ordered after the new request is added. If two books have the same author, the order doesn’t matter. For example, a book by Ashley Spires should be before a book by Whee Winn in the list; a book by Elizabeth Spires should be after a book by Ashely Spires in the list. 2. (40 points) Modify project 7 so that it uses quick sort to sorts the cars by city mpg. Name your program car2.c. Instead of using the sorting function you wrote for project 7, use the quick sort library function and implement the comparison function.

Learning Goal: I’m working on a c programming project and need a sample draft to

Learning Goal: I’m working on a c programming project and need a sample draft to help me learn.A daycare center would like to maintain a list of book requests from the teachers for their classroom libraries. Each book was stored with the title, author’s first name, last name, price, and classroom. Modify add_to_end function in book.c in Project 9: a. Instead of adding to the end of the linked list(wich i wrote), a book is added to an ordered linked list. A book is added to an ordered linked list by author’s last name and then by author’s first name. The list remains ordered after the new request is added. If two books have the same author, the order doesn’t matter. For example, a book by Ashley Spires should be before a book by Whee Winn in the list; a book by Elizabeth Spires should be after a book by Ashely Spires in the list.

Learning Goal: I’m working on a c programming question and need an explanation a

Learning Goal: I’m working on a c programming question and need an explanation and answer to help me learn.This assignment is the second in a two-part series on building a calculator. It follows on from HW12 but does not directly build on it (you do not need a working HW12 to successfully complete this assignment). In HW12, you had to build an RPN calculator that took a postfix expression and computed the result. In this assignment, you will build a tool that converts an infix expression (i.e., an expression that looks “normal”) into a postfix output that the HW12 calculator can operate on.This assignment essentially asks you to write a very basic compiler. We provide some additional background about compilers in note boxes (like this one) throughout the background section, but you can ignore them if you want. If you’re interested in learning more about how compilers work, take ECE 468.Learning GoalsIn this assignment you will learnBasic expression parsing
Building a tree bottom-up
Performing a post-order traversal of a tree
BackgroundFully parenthesized infix expressionsInfix expressions are the “normal” way you’re used to seeing arithmetic expressions written out (e.g., 2 + 3 * 7), with all the complications of order-of-operations, etc. We will use a simpler version of infix expressions that we will call “fully parenthesized”: every binary operation is enclosed in parentheses. So 2 + 3 * 7 would be written (2 + (3 * 7)). Note that because we put parentheses everywhere, we can ignore order of operations.To precisely capture what a fully parenthesized expression is, we can define a fully parenthesized infix expression recursively. A fully parenthesized expression is:A (floating point) number
An open parenthesis ‘(‘ followed by a fully parenthesized expression (which also follows these rules) followed by an operator (+, -, *, or ) followed by another fully parenthesized expression followed by a closed parenthesis ‘)’.
Defining expressions and other things recursively is very common in computer science/engineering, so people have come up with notation to directly capture the recursive rules laid out above. We would express these rules as:
E -> lit
E -> (E op E)
Basic expression parsingThe process of determining whether a string is a valid fully-parenthesized expression and breaking that expression into its components (“this is a number,” “this is a parenthesized sub-expression,” etc.) is called parsing. The way to do this is to look at the rules that define a valid fully-parenthesized expression and decide whether a given string obeys those rules (i.e., you could use those rules to generate the string).There is a whole sub-field of computer science devoted to determining how to parse strings (in fact, a parser is one of the major components of a compiler: it determines what parts of your code are if statements, what parts are variable declarations, etc.). But our rules for fully-parenthesized expressions are simple enough that we can write a simple recursive function to decide whether an expression is valid.TokenizationThe first step in parsing is to tokenize a string: to turn a string of characters into a string of “words” that represent the individual pieces of an expression. We call these words tokens. In other words, a tokenizer’s job is to take a string like:(3 + (7 * 8))And tell you the individual words (tokens) in the string:LPAREN VAL ADD LPAREN VAL MUL VAL RPAREN RPARENIn this case, LPAREN means the character (, VAL means any number, RPAREN means the character ), and ADD and MUL are (hopefully) self-explanatory.It might seem like adding an extra step to turn a fairly simple expression into a bunch of tokens, but this is useful because that way later stages of parsing don’t have to worry about things like skipping over white space, or deciding whether 8)) is one word or three (in this case, it’s three!).The tool that tokenizes a string is called a tokenizer or a scanner. We have written a scanner for you (in scanner.c) that reads in a file, breaks it up into tokens, and lets you find the next token in the string by calling nextToken. Pay close attention to the Token data type defined in scanner.h!Recursive parsingGiven a tokenizer, we can now write a simple recursive function to tell whether a string is a valid, fully-parenthesized expression. Here is the algorithm, which you can wrap in a function that returns a bool.Get the next token
If the next token is a VAL (matches rule 1), this is a valid fully-parenthesized expression. Return true.
If the next token is an LPAREN we now try to match all of rule 2:We have already seen the LPAREN, so the next thing we expect to see is a fully-parenthesized expression. We can just call this same function recursively to do that! If the recursive call returns true, it means we have found a fully-parenthesized expression
The next part of rule 2 is to match an operation, so we grab the next token and see if it is an ADD, SUB, MUL, or DIV. If it is, we continue.
Then we call this same function recursively again to find another fully-parenthesized expression.
Finally, we grab the next token to see if it is an RPAREN. If it is, we have matched rule 2, and this is a fully-parenthesized expression, so we return true.
If any of those steps fail, that means we don’t see what we expect, and the string is not a fully-parenthesized expression, so we should return false.The recursive function we wrote is a simplified version of a recursive descent parser. These types of parsers are not quite powerful enough to decide, for example, if a given program is a valid C program (the rules for valid C programs are too complicated). But they’re still pretty powerful.Expression treesA useful way to represent a fully-parenthesized expression is using an expression tree. This is a binary tree where each leaf node (node with no children) is a number, and each interior node (a node with two children) is an arithmetic operation. The structure of the expression tree matches the parentheses: each fully-parenthesized (sub) expression becomes its own (sub) tree. So, for example, (7 + (8 * 10)) has an expression tree that looks like:While a more complicated expression like: ((7 + (8 * 10)) – (2 + 3)) has an expression tree that looks like:(Note that the expression (7 + (8 * 10)) appears as a subexpression here, so its expression tree appears as the left subtree in the larger tree.)Building expression treesInterestingly, you can build an expression tree from a fully-parenthesized expression during the process of parsing it (using the recursive approach from above). The key is the concept of building a tree “bottom up.”In class, we have seen how to build trees “top down” (think binary search trees): we start by creating the root, then we add new nodes by adding children to nodes at the “bottom” of the tree. The tree “grows” from the top down: we create a node before we create any of its descendants.The idea behind bottom up tree construction is that we create a tree by first creating the subtrees, then making those subtrees the left and right children of a newly-created root. In other words, we create a node by first creating its descendants.We can modify our recursive parser from above to build trees instead. The idea is that invoking the parser function returns an expression tree that represents the (sub)expression we just matched. Rather than returning a bool, we can have it return a TreeNode *.In step 1, where we used to return true because we found a value, we can instead return a pointer to a newly-allocated TreeNode containing that value. (This TreeNode doesn’t need left or right children — recall that in values are the leaves of an expression tree.).
In step 2, each of the recursive calls to the parse function will return TreeNode * pointers to trees that represent the sub-expression we matched. These can become the left and right children of a new node, whose value is the operator we match in step 2. This new node can be returned as the root of a tree representing the expression we just matched.
ExampleSo let’s see how our parse function would work for (7 + (8 * 10)):We start by seeing an LPAREN, so we’re trying to match rule 2.
We invoke the recursive method again.We see a VAL, so we build a node containing that value, and return it:
We see an ADD, which we remember, but don’t do anything with
We invoke the recursive method again.We see an LPAREN, so we’re trying to match rule 2.
We invoke the recursive method again.We see a VAL, so we build a node containing that value and return it:
We see a MUL, which we remember, but don’t do anything with
We invoke the recursive method again.We see a VAL, so we build a node containing that value and return it:
We create a new TreeNode storing the MUL, and make its left and right children the TreeNodes we returned from the two recursive invocations:
We see an RPAREN, so we return the new tree.
We create a new TreeNode storing the ADD, and make its left and right children the TreeNodes we returned from the two recursive invocations:
We see an RPAREN, so we return the new tree
Postfix traversalThere are three “standard” ways to traverse a binary tree, each of which describes a way of recursively visiting each node of the tree.inorder recursively visits the left child, then processes the current node, then recursively visits the right child.
preorder processes the current node, then recursively visits the left child, then recursively visits the right child.
postorder recursively visits the right child, recursively visits the left child, then processes the current node.
If “processing” a node prints out its value, note that doing an inorder traversal of the expression tree recovers the original infix expression (though without the parentheses, so the order of operations might be screwy). If we print this expression tree inorder:We get 7 + 8 * 10 – 2 + 3, which looks like its source expression if you remove all the parentheses.Printing the tree preorder instead gives us: – + 7 * 8 10 + 2 3.Finally, printing the tree postorder give us: 7 8 10 * + 2 3 + -.Note that this is exactly what the postfix representation of the source expression would be. If we create an expression tree from a fully-parenthesized expression, we can turn it into postfix by performing a postorder print!What you have to doYour job is to:Write a recursive function to parse a fully-parenthesized infix expression and produce an expression tree
Write a function to traverse the expression tree in postorder and print the postfix representation of the input expression to a file.
We have given you many starter files:tree.h and tree.c: data structure definitions for TreeNodes, as well as basic allocation and deallocation routines. You may find the printTree routine useful for debugging.
scanner.h and scanner.c: a scanner that reads in a fully-parenthesized expression from a file and creates a stream of tokens. You can invoke nextToken to get the next token from the input expression (the token definitions are in scanner.h). You may find the printToken routine useful for debugging.
expressionTree.h: a header file containing two function declarations: one to build an expression tree, the other to print it out in postorder to a file.
hw13.c: a driver file for the assignment, containing the main function.
Your job is to write expressionTree.c, which contains two functions:buildExpressionTree: this is the recursive parsing function, which returns the root of an expression tree built from the input expression. The function takes a Scanner as an argument, which can be used to step through the tokens in the input expression.
makePostfix: this function performs a post-order traversal of the expression tree (whose root is passed in as t) and writes it out to the file (whose FILE pointer is passed in as fptr). The output file should be an RPN expression that you can pass in to your calculator from HW12.
Do not modify any files other than expressionTree.c!Partial CreditWe will give partial credit if your buildExpressionTree routine works, but makePostfix doesn’t, and vice-versa. To ensure that we can compute partial credit do not remove the #ifndef directives from buildExpressionTree.c.What you have to turn inTurn in only expressionTree.c. If you submit any other files, we will not use them: we will overwrite them with our own versions of those files during the grading process. Any helper methods you need should just be declared and defined directly within expressionTree.c (not in expressionTree.h).

This is a finals assignment and it is worth 10% of final grade, and it is a C++

This is a finals assignment and it is worth 10% of final grade, and it is a C++ account ticketing system. The link to Github and all the files necessary are on the pdf I have attached. I need milestone 4 on the pdf to be ready to submit, alongside the reflection , and anything else that is required to submit milestone 4, with multiple visual studio files ready. The code has to EXACTLY match the desired output included in the pdf, and every space or spelling is sensitive when trying to submit. Additionally, the entire code is a continuation from the previous assignment, so this assignment will have to be done with editing the previous files that I have included in this request. Any file I have not included means that file is new, and should be kept in there for submission. The assignment is due this week, so I would like to have it ready to submit by Wednesday midnight. Please let me know if you have any questions about the assignment, and I’ll gladly provide any information that is needed. For better communications, you can add me on discord to discuss about this assignment. My discord is: Owpm#9381

Learning Goal: I’m working on a c programming question and need support to help

Learning Goal: I’m working on a c programming question and need support to help me learn.I meet the problem about encryption and decryption programming.can someone help me? it can use programming C,java,C++,haskell….Purpose of this exercise: construct a tool to work with a substitution cipher.
Write a program that, given a query consisting of multiple substitution cipher
encryption and decryption requests, consecutively applies them to a given plaintext/ciphertext and outputs the final result. Each request has the following
structure:
(d | e) (mapping | shift)
Where mapping represents a permutation of the 26 character English alphabet,
and shift is a signed 4 byte integer (−2
31 ≤ shift ≤ 2
31 − 1). A decryption
request should revert the specified mapping or shift on the given text.
Note: an encryption with a shift divisible by 26 does not modify the text and
a shift equal to 3 is equivalent to the classical Caesar encryption. The correct
sequence for calling the substitution cipher is the following:
1. Call the tool on the command line without arguments.
1
2. On the first stdin line, indicate the series of requests (following the above
structure), followed by the newline character.
3. On the following lines, insert the text upon which the query will be applied.
The first request will use this text to produce the ciphertext/plaintext
which will be in turn used by the second request, and so forth until the
last request.
As an example, the following string could be inserted on the first line of stdin:
d 5 e 12 d zyxwvutsrqponmlkjihgfedcba e 3

This is a finals assignment and it is worth 10% of final grade, and it is a C++

This is a finals assignment and it is worth 10% of final grade, and it is a C++ account ticketing system. I need milestone 4 of the pdf to be ready to submit, with multiple visual studio files ready. The code has to exactly match the desired output included in the pdf, and every space or spelling is sensitive when trying to submit. The assignment is due on morning of this friday(November 12, so I would like to have it ready to submit by thursday midnight. Please let me know if you have any questions about the assignment, and I’ll gladly provide any information that is needed. For better communications, you can add me on discord to discuss about this assignment. My discord is: Owpm#9381

For this project, you will be creating a program to play a simplified version of

For this project, you will be creating a program to play a simplified version of “Craps”, a well-known dicegame. In the game, two dice are thrown, and the players bet on the outcome of the roll (the sum of the upturnedfaces). Please follow the Description.pdf, check all cases in the Summary.pdf, and check the Rubric. I tried it in My_P1.txt. However, it is a mess now. You can get some basic functions in there to save time. If you have any questions, please contact me through chat or my phone number 571-565-6357. Thank you. I appreciate your help.