Depending on the Oracle release, maybe, actually you can do it in SQL using correlated subqueries to set up the crosstabs view, but this is in SQL-92 and SQL-99, which Oracle doesn't fully support.

Example: Select idno,course,{select course from courses b where b.idno=a.idnot and b.course <> a.course} from courses a;

or something like that.