Click here to Skip to main content
15,885,216 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
Hello,

Am new here but I will appreciate if I can get an answer.

I am to build a miniature automatic feedback for programming assignment system as a final year project.

This system will take a programming assignment in C either through a web form or a text file and check for errors. It will then notify the uploader of the program of the errors and possible corrections expected. It isn't necessarily going to be a grading system.

I just want to know how to start with this. Anyone who has any idea what I can do to acheive my objective should please help out.

Thanks.

Edit: The web system will take a code snippet which will be submitted by a student using the platform and check for errors that won't let the code compile or that makes the code wrong. It will then output these errors, thereby advising the student on where to focus on.
Posted
Updated 15-Apr-14 2:56am
v3
Comments
OriginalGriff 15-Apr-14 8:51am    
That isn't too clear - the way I read it is that you are trying to write software to read the assignment "write a program to do this in c#" and report on any problem with that.
Which is clearly wrong and very silly...
So what do you mean?
Use the "Improve question" widget to edit your question and provide better information.
CodedTee 15-Apr-14 8:58am    
I was asked to write a software to do exactly what you read. Take a code and check for its errors. Somewhat like a compiler that indicates the issue stopping a code from compiling or being correct.

Nice you joined, but this isn't the place others are willing to do your homework assignments or final year projects. You really need to do it yourself. If, however, you have any specific problems at some point you need help with, this is the place to go. Questions need to be specific about some problem. Like you tried something to get upload functionality going and after you tried and searched the web for more info you still not get it working. You question yourself about what you are missing and why it still won't work. You then post info and code on what you did so far and members here will be glad to have a look and help you out if they can.

Hopefully above makes it more clear what this site is all about (and what it ain't).

Good luck!
 
Share this answer
 
Comments
CodedTee 15-Apr-14 8:59am    
Thanks for clearing that out. I wasn't asking for someone to do my final year projects for me.
E.F. Nijboer 15-Apr-14 9:18am    
Great you understand. As it is your final year assignment you should know by now how to do it. I think it has more to do with your own confidence because if you are a little like me back then I often questioned if my ideas would work. Nice thing about school is that it is just the right place to find out and in most cases you got it right. Some of the best ideas how to handle some problems or assignments is just to go your own way. New and creative solutions come from those not afraid to simply try something else and go another way. Write down an outline of your solution or maybe different solutions and then write down what is good about it and what you see as hurdle. Is there a better way to avoid such the hurdle? If not, you just need to jump over it.
Manas Bhardwaj 15-Apr-14 9:17am    
well said +5!
"I was asked to write a software to do exactly what you read. Take a code and check for its errors. Somewhat like a compiler that indicates the issue stopping a code from compiling or being correct."

And that a problem. Probably a very, very big one.
There are two big limits here: "error free compilation" - which depends on the compiler and environment that the code is intended for: there are a huge number of C compilers each of which will consider different things as "errors" for example, and code written in C for an embedded device will not compile for Windows for another. The only practical way to "prove" compilation correctness is to duplicate exactly what each compiler will do...

The second is a lot, lot bigger. You can't prove "correctness" of an application in isolation - only by referring to the actual specification it was written to.
For example:
C#
using System;
using System.IO;

namespace TCFConsole
    {
    class Program
        {
        static void Main(string[] args)
            {
            Console.WriteLine("Hello World!");
            }
        }
    }
Is a "correct program" in C# in the sense that it compiles ok and doesn't crash - but it doesn't work at all well if it is supposed to be a word processor!

I think you have possibly bitten off more than you can chew, and need to think very, very carefully about exactly what you are going to accept and what your "correctness" is going to be.
Then you can start thinking about how to implement it.

Even if you restrict it to indicating the actual problem in compilation, that's a nightmare!
Compilers do their best to say "this is where I found the problem" but that isn't the same as saying "You forgot to close your string here" when I leave out a double quote and it doesn't become a problem for a couple of hundred lines...:laugh:
 
Share this answer
 
Comments
CodedTee 15-Apr-14 9:33am    
Waoh...

I think I will rather just find a way to incorporate a compiler into my project and let it indicate where an error is. if I see gthat I've bitten more than I can chew, I will ask my supervisor for another project to work on.

Thanks for your help. Really appreciated.
OriginalGriff 15-Apr-14 10:28am    
You're welcome!

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900